diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index dea393f..fb58702 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -26,9 +26,9 @@ BusinessOrder orderDetail(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); + ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception; - ReturnDTO addOrder(BusinessOrder businessOrder); + ReturnDTO addOrder(BusinessOrder businessOrder)throws Exception; void orderExport(OrderListRequest request, HttpServletResponse response); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index dea393f..fb58702 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -26,9 +26,9 @@ BusinessOrder orderDetail(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); + ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception; - ReturnDTO addOrder(BusinessOrder businessOrder); + ReturnDTO addOrder(BusinessOrder businessOrder)throws Exception; void orderExport(OrderListRequest request, HttpServletResponse response); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java index fd4be1d..d5d00ee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java @@ -18,7 +18,7 @@ Page listPage(Page page, CustomerSampleListRequest request) throws Exception; - ReturnDTO addSample(CustomerSampleInfo customerSampleInfo); + ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception; ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index dea393f..fb58702 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -26,9 +26,9 @@ BusinessOrder orderDetail(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); + ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception; - ReturnDTO addOrder(BusinessOrder businessOrder); + ReturnDTO addOrder(BusinessOrder businessOrder)throws Exception; void orderExport(OrderListRequest request, HttpServletResponse response); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java index fd4be1d..d5d00ee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java @@ -18,7 +18,7 @@ Page listPage(Page page, CustomerSampleListRequest request) throws Exception; - ReturnDTO addSample(CustomerSampleInfo customerSampleInfo); + ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception; ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java index 3bcb80c..bef03f0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java @@ -16,7 +16,7 @@ List customerList(CustomerListRequest request) throws Exception; - ReturnDTO addCustomer(CustomerInfo customerInfo); + ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception; ReturnDTO updateCustomer(CustomerInfo customerInfo); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index dea393f..fb58702 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -26,9 +26,9 @@ BusinessOrder orderDetail(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); + ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception; - ReturnDTO addOrder(BusinessOrder businessOrder); + ReturnDTO addOrder(BusinessOrder businessOrder)throws Exception; void orderExport(OrderListRequest request, HttpServletResponse response); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java index fd4be1d..d5d00ee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java @@ -18,7 +18,7 @@ Page listPage(Page page, CustomerSampleListRequest request) throws Exception; - ReturnDTO addSample(CustomerSampleInfo customerSampleInfo); + ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception; ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java index 3bcb80c..bef03f0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java @@ -16,7 +16,7 @@ List customerList(CustomerListRequest request) throws Exception; - ReturnDTO addCustomer(CustomerInfo customerInfo); + ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception; ReturnDTO updateCustomer(CustomerInfo customerInfo); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java index 8668cc7..24ce44f 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import com.casic.missiles.model.equipment.EquipmentStateChangeLog; @@ -48,4 +49,6 @@ ReturnDTO queryUseLogList(Long id) throws Exception; ReturnDTO queryStateChangeLogList(Long id) throws Exception; + + Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java index a79e129..3534a47 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/MockController.java @@ -7,24 +7,27 @@ import com.casic.missiles.core.model.auth.CasicCustomToken; import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.core.util.RSAUtils; -import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; -import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; -import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.enums.PrefixCodeEnum; import com.casic.missiles.model.response.SuccessResponseData; import com.casic.missiles.modular.domain.constants.PermissionConstants; import com.casic.missiles.modular.interfaces.log.LogManager; import com.casic.missiles.modular.interfaces.log.factory.LogTaskFactory; import com.casic.missiles.modular.system.dto.LoginSuccessDTO; -import com.casic.missiles.utils.SpringContextUtil; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.subject.Subject; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; + +import java.lang.reflect.Field; import java.security.NoSuchAlgorithmException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; + import static com.casic.missiles.core.util.HttpContext.getIp; @@ -82,4 +85,17 @@ resultData.setMessage("登录成功"); return resultData; } + + @GetMapping("/prefixcode/list") + @ResponseBody + public Object getPreFixCodeList() throws Exception{ + Class fixCodeEnumClass = PrefixCodeEnum.class; + Field[] fixCodeEnumFileds = fixCodeEnumClass.getDeclaredFields(); + List fixCodeList=new ArrayList<>(); + for(Field field: fixCodeEnumFileds){ + fixCodeList.add( field.get(PrefixCodeEnum.class).toString()); + } + return ReturnUtil.success(fixCodeList); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index c9d6a93..28d4f04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -88,13 +88,13 @@ /** * 催办会产生催办消息,对相关操作人员进行消息提示 */ - @ApiOperation("催办(暂时未开发)") - @PostMapping("/rushDoProcess") - public ReturnDTO rushDoProcess(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { + @ApiOperation("催办") + @PostMapping("/remindWorker") + public ReturnDTO remindWorker(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return bizDispatchService.rushDoProcess(deviceReceiveDTO); + return bizDispatchService.remindWorker(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index f1c90e8..227ca04 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -70,7 +70,7 @@ @ApiOperation("委托书更新") @PostMapping("/update") - public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO updateAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult)throws Exception { Assert.isFalse(Objects.isNull(businessOrder.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); @@ -82,7 +82,7 @@ @ApiOperation("委托书新增") @PostMapping("/add") - public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) { + public ReturnDTO addAdvice(@RequestBody @Valid BusinessOrder businessOrder, BindingResult bindingResult) throws Exception{ Assert.isFalse(bindingResult.hasErrors(), () -> { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); }); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java index 9f2284d..e9b576a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerController.java @@ -16,6 +16,7 @@ import com.casic.missiles.model.customer.CustomerInfo; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.customer.CustomerService; +import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -59,7 +60,7 @@ @ApiOperation("客户新增") @PostMapping("/add") - public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) { + public ReturnDTO addCustomer(@RequestBody @Valid CustomerInfo customerInfo, BindingResult bindingResult) throws Exception{ if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index e07ad0b..16d1465 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -51,7 +51,7 @@ @ApiOperation("样品新增") @PostMapping("/add") - public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult) { + public ReturnDTO addSample(@RequestBody @Valid CustomerSampleInfo customerSampleInfo, BindingResult bindingResult)throws Exception { if (bindingResult.hasErrors()) { throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index a0352db..7e16043 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -1,6 +1,5 @@ package com.casic.missiles.controller.equipment; -import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.base.controller.ExportController; import com.casic.missiles.core.page.PageFactory; @@ -8,10 +7,13 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.ExportEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.model.equipment.*; import com.casic.missiles.dto.equipment.StandardSupportEquipmentExcelData; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; import com.casic.missiles.utils.DictCodeUtils; import io.swagger.annotations.Api; @@ -19,6 +21,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -227,5 +230,18 @@ public ReturnDTO queryStateChangeLogList(@RequestBody @Valid IdDTO idDTO) throws Exception { return iEquipmentFixedAssetsService.queryStateChangeLogList(idDTO.getId()); } + /** + * 通过名字/编号查询设备与样品 + */ + @ApiOperation("通过名字/编号查询设备与样品") + @PostMapping("/queryEquipment") + @ResponseBody + public ReturnDTO> queryEquipment(@RequestBody @Valid EquipmentOrSampleDto request, BindingResult bindingResult) throws Exception{ + if(bindingResult.hasErrors()){ + throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); + } + Page page = PageFactory.defaultPage(); + return ReturnUtil.success(super.packForBT(iEquipmentFixedAssetsService.queryEquipment(page, request))); + } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 2f51507..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -23,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -61,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java index caa0a79..d1760b6 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/MeterFixedAssetsMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import org.apache.ibatis.annotations.Param; @@ -20,4 +21,5 @@ Page listPage(Page page, @Param("fixedAssetRequest") FixedAssetRequest fixedAssetRequest); + Page queryEquipment(Page page, @Param("request")EquipmentOrSampleDto request); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml index 86f4ee4..435d1de 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml @@ -89,7 +89,7 @@ AND csi.sample_name LIKE concat('%',#{request.sampleName},'%') - + AND csi.sample_belong = #{request.sampleBelong} ) csi ON csi.id = bosr.sample_id diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 35b5827..c25f789 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -87,4 +87,38 @@ ORDER BY mfa.create_time DESC + + diff --git a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml index b0852e9..ae078b7 100644 --- a/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/system/SystemSignMapper.xml @@ -9,6 +9,7 @@ + @@ -54,4 +55,11 @@ LEFT JOIN sys_user su ON su.id = ssur.user_id WHERE ss.id = #{id} AND ss.is_del = 0 + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java index a4d1002..e1b6ec7 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/constants/MeterDictCode.java @@ -124,4 +124,6 @@ * 工作台 */ String MESSAGE_TYPE = "messageType"; + // APP全局查询类型 + String APP_AGGREGATE_QUERY_TYPE= "appAggregateQueryType"; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java new file mode 100644 index 0000000..92dcf02 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/equipment/EquipmentOrSampleDto.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.equipment; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@ApiModel +@Data +public class EquipmentOrSampleDto { + /** + * id + */ + @ApiModelProperty(value = "主键", dataType = "Long") + private Long id; + + /** + * 设备/样品编号 + */ + @ApiModelProperty(value = "设备/样品编号", dataType = "String") + private String assetNo; + + /** + * 设备/样品名称 + */ + @ApiModelProperty(value = "设备/样品名称", dataType = "String") + private String assetName; + + + /** + * 类型 + */ + @ApiModelProperty(value = "类型", dataType = "String") + @DictCodeField(message = "类型", cacheName = MeterDictCode.APP_AGGREGATE_QUERY_TYPE) + private String assetType; + + /** + * 类型名称 + */ + @ApiModelProperty(value = "类型名称不合法", dataType = "String") + private String assetTypeName; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java index 32d90c0..033f40a 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/workbench/WorkbenchRemindMessage.java @@ -7,6 +7,7 @@ import com.casic.missiles.constants.MeterDictCode; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; import lombok.Data; import java.io.Serializable; @@ -51,6 +52,13 @@ @TableField("business_id") private Long businessId; + + /** + * 消息提醒的业务关联表id + */ + @ApiModelProperty(value = "关联表业务主键", dataType = "Long") + @TableField("relation_business_id") + private Long relationBusinessId; /** * 消息提醒的业务内容编码 */ @@ -70,6 +78,13 @@ @TableField(exist = false) private String messageTypeName; + + /** + * 消息主题 + */ + @ApiModelProperty(value = "消息主题", dataType = "String") + @TableField("message_topic") + private String messageTopic; /** * 消息主题(冗余) */ diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index 1d63554..ab5978d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -53,7 +53,7 @@ */ @Service @AllArgsConstructor -public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService,PrefixCodeEnum, OrderStatusEnum,SampleStatusEnum, MeasureTypeEnum { +public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService, PrefixCodeEnum, OrderStatusEnum, SampleStatusEnum, MeasureTypeEnum { private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; @@ -107,7 +107,7 @@ * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 */ @Override - public ReturnDTO updateOrder(BusinessOrder businessOrder) { + public ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception { if (CollectionUtils.isEmpty(businessOrder.getCustomerSampleInfoList())) { return ReturnUtil.failed("样品列表不能为空"); } @@ -141,7 +141,7 @@ */ @Override @Transactional - public ReturnDTO addOrder(BusinessOrder businessOrder) { + public ReturnDTO addOrder(BusinessOrder businessOrder) throws Exception { initOrderInfo(businessOrder); int addFlag = this.baseMapper.insert(businessOrder); boolean sampleAddFlag = true; @@ -209,8 +209,8 @@ int updateFlag = doUpdateStatusById(orderCancelRequest.getId(), status); String dealType = ""; if (status.equals(ALREADY_RECEIVED)) { - dealType = "委托书接收" ; - doUpdateSampleStatus(orderCancelRequest.getId(),TO_RECEIVE); + dealType = "委托书接收"; + doUpdateSampleStatus(orderCancelRequest.getId(), TO_RECEIVE); } else { dealType = "委托书退回"; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index c9c1902..8e41658 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.base.service.IBaseExportService; +import com.casic.missiles.core.model.auth.AuthUser; import com.casic.missiles.core.page.PageFactory; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.business.HandOutLabExecutiveDTO; @@ -15,16 +17,25 @@ import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.business.MeasureStatusEnum; import com.casic.missiles.enums.business.MeasureTypeEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; import com.casic.missiles.enums.sample.SampleStatusEnum; +import com.casic.missiles.enums.workbench.MessageTypeEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.*; +import com.casic.missiles.mapper.customer.CustomerSampleMapper; +import com.casic.missiles.mapper.workbench.WorkbenchRemindMessageMapper; import com.casic.missiles.model.business.*; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.model.workbench.WorkbenchRemindMessage; import com.casic.missiles.service.business.IBusinessDispatchService; +import com.casic.missiles.utils.NumberGeneratorUtil; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.docx4j.wml.R; +import org.springframework.data.redis.connection.Message; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -43,8 +54,11 @@ @Slf4j @AllArgsConstructor public class IBusinessDispatchServiceImpl extends ServiceImpl implements IBusinessDispatchService, SampleStatusEnum, CurrentSegmentEnum, MeasureTypeEnum { - private final BusinessOrderSampleRelationMapper orderSampleRelationMapper; + + private WorkbenchRemindMessageMapper remindMessageMapper; + + private CustomerSampleMapper customerSampleMapper; private final BusinessCertificateReportMapper certificateReportMapper; private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; @@ -134,9 +148,10 @@ @Override @Transactional public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - boolean beforeEventFlag = beforeStatusChange(deviceStatusChangeDTO); + boolean incomeStatusFlag = incomeStatusChange(deviceStatusChangeDTO); + completeStatusChange(deviceStatusChangeDTO); Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFlag > 0 && beforeEventFlag) { + if (updateFlag > 0 && incomeStatusFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -150,7 +165,7 @@ public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); //实验室状态数据的更新 - updateLabExecutiveInfo(deviceStatusChangeDTO); + updateLabExecutiveInfo(deviceStatusChangeDTO, MeasureStatusEnum.TERMINATED); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -182,29 +197,78 @@ } } - private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO, String measureStatus) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); -// queryWrapper.ne("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or() + .eq("sample_status", IN_MEASURE)); BusinessLabExecutiveInfo businessLabExecutiveInfo = new BusinessLabExecutiveInfo(); -// businessLabExecutiveInfo.setMeasureStatus(); + businessLabExecutiveInfo.setMeasureStatus(measureStatus); businessLabExecutiveInfo.setRemark(deviceStatusChangeDTO.getReason()); labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } - /** - * 消息催办 - */ + @Override - public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFlag > 0) { - return ReturnUtil.success(); + public ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO) { + BusinessLabExecutiveInfo labExecutiveInfo = getLabExecutiveInfo(deviceStatusChangeDTO); + if (labExecutiveInfo != null) { + WorkbenchRemindMessage remindMessage = initWorkbenchRemindMessage(labExecutiveInfo); + int remindMessageAddFlag = remindMessageMapper.insert(remindMessage); + if (remindMessageAddFlag > 0) { + return ReturnUtil.success(); + } } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + private BusinessLabExecutiveInfo getLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); + queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); + queryWrapper.and(QueryWrapper -> QueryWrapper.eq("measure_status", MeasureStatusEnum.TO_ALLOCATE) + .or().eq("measure_status", MeasureStatusEnum.TO_MEASURE) + .or().eq("measure_status", MeasureStatusEnum.IN_MEASURE)); + List businessLabExecutiveInfo = labExecutiveInfoMapper.selectList(queryWrapper); + return businessLabExecutiveInfo.isEmpty() ? null : businessLabExecutiveInfo.get(0); + } + + /** + * 消息催办 + * 1、待办人为当前实验室工作人员, + * 2、业务主键id业务主键将要跳转的页面id + * 3、当前工作人员id的或部门的id + * 4、创建人为当前催办人 + * 5、消息类型为超出检定时间催办提醒 + * 6、消息主题为代办人或者待办部门 + * 7、消息标题待办提醒,内容为样品 + */ + public WorkbenchRemindMessage initWorkbenchRemindMessage(BusinessLabExecutiveInfo labExecutiveInfo) { + WorkbenchRemindMessage remindMessage = new WorkbenchRemindMessage(); + remindMessage.setRemindId(labExecutiveInfo.getMeasurePersonId()); + remindMessage.setRemindDeptId(labExecutiveInfo.getMeasureDeptId()); + remindMessage.setMessageType(MessageTypeEnum.OVERTIME_MEASURE.getCode()); + //检测人不为空,且检测状态不为待分配消息催办到我的检测 + if (!Objects.isNull(labExecutiveInfo.getMeasurePersonId()) && !MeasureStatusEnum.TO_ALLOCATE.equals(labExecutiveInfo.getMeasureStatus())) { + remindMessage.setMessageTopic("我的检测"); + } else { + remindMessage.setMessageTopic("部门检测"); + } + CustomerSampleInfo customerSampleInfo = customerSampleMapper.selectById(labExecutiveInfo.getSampleId()); + if (null != customerSampleInfo) { + remindMessage.setMessageTitle(customerSampleInfo.getSampleName() + "样品检测已经超出期限"); + remindMessage.setMessageContent(customerSampleInfo.getSampleNo() + customerSampleInfo.getSampleName()); + remindMessage.setBusinessCode(customerSampleInfo.getSampleNo()); + } + remindMessage.setBusinessId(labExecutiveInfo.getSampleId()); + remindMessage.setRelationBusinessId(labExecutiveInfo.getOrderId()); + AuthUser authUser = ShiroKit.getUser(); + remindMessage.setCreateUser(authUser.getId()); + remindMessage.setCreateUserName(authUser.getName()); + return remindMessage; + } + private Integer getAlreadyCertificateNum(DeviceDispatchVO dispatchVO, Long measureDeptId) { Long aLong = certificateReportMapper.selectCount(getCertificateReportWrapper(dispatchVO, measureDeptId)); return aLong.intValue(); @@ -240,7 +304,7 @@ queryWrapper.eq("sample_id", statusChangeDTO.getSampleId()); if (terminateFlag) { //若是终止,需要对应待分发、检测中、检测完三个状态的变更 - queryWrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE); + queryWrapper.and(wrapper -> wrapper.eq("sample_status", TO_HANDOUT).or().eq("sample_status", IN_MEASURE).or().eq("sample_status", MEASURE_COMPLETE)); } BusinessOrderSampleRelation businessOrderSampleRelation = new BusinessOrderSampleRelation(); businessOrderSampleRelation.setSampleStatus(statusChangeDTO.getStatus()); @@ -291,7 +355,7 @@ return false; } - private boolean beforeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + private boolean incomeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { if (statusChangeDTO.getStatus().equals(TO_INCOME)) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -311,4 +375,11 @@ return true; } + private void completeStatusChange(DeviceStatusChangeDTO statusChangeDTO) { + if (statusChangeDTO.getStatus().equals(COMPLETE)) { + this.updateLabExecutiveInfo(statusChangeDTO, MeasureStatusEnum.MEASURE_COMPLETE); + } + } + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index eebf810..9fa94f8 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -76,7 +76,8 @@ */ @Override @Transactional - public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { + public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception{ + DictCodeUtils.validDictCode(customerSampleInfo); initSample(customerSampleInfo); int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index f6e1f8a..8277712 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -24,6 +24,7 @@ import com.casic.missiles.service.customer.CustomerService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import liquibase.pro.packaged.E; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -66,7 +67,8 @@ @Override @Transactional - public ReturnDTO addCustomer(CustomerInfo customerInfo) { + public ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception { + DictCodeUtils.validDictCode(customerInfo); initCustomerInfo(customerInfo); int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java index 7ff9c16..c0c7c79 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/equipment/EquipmentFixedAssetsServiceImpl.java @@ -10,6 +10,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; @@ -19,10 +20,7 @@ import com.casic.missiles.mapper.equipment.EquipmentFixedAssetFileMapper; import com.casic.missiles.mapper.equipment.EquipmentStateChangeLogMapper; import com.casic.missiles.mapper.equipment.EquipmentUseLogMapper; -import com.casic.missiles.model.equipment.EquipmentFixedAssetFile; -import com.casic.missiles.model.equipment.EquipmentFixedAssets; -import com.casic.missiles.model.equipment.EquipmentStateChangeLog; -import com.casic.missiles.model.equipment.EquipmentUseLog; +import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.page.PageQuery; import com.casic.missiles.service.equipment.IEquipmentFixedAssetFileService; import com.casic.missiles.service.equipment.IEquipmentFixedAssetsService; @@ -360,6 +358,15 @@ return ReturnUtil.success(logList); } + @Override + public Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception { + Page resultPage = meterFixedAssetsMapper.queryEquipment(page, request); + for (EquipmentOrSampleDto dto : resultPage.getRecords()) { + DictCodeUtils.convertDictCodeToName(dto); + } + return resultPage; + } + /** * 转换字典code * diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +import cn.hutool.core.lang.Assert; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.casic.missiles.core.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 0c2aeb2..cbf2cf5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -21,5 +21,5 @@ ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO); - ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO); + ReturnDTO remindWorker(DeviceStatusChangeDTO deviceStatusChangeDTO); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index dea393f..fb58702 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -26,9 +26,9 @@ BusinessOrder orderDetail(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); + ReturnDTO updateOrder(BusinessOrder businessOrder) throws Exception; - ReturnDTO addOrder(BusinessOrder businessOrder); + ReturnDTO addOrder(BusinessOrder businessOrder)throws Exception; void orderExport(OrderListRequest request, HttpServletResponse response); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java index fd4be1d..d5d00ee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java @@ -18,7 +18,7 @@ Page listPage(Page page, CustomerSampleListRequest request) throws Exception; - ReturnDTO addSample(CustomerSampleInfo customerSampleInfo); + ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) throws Exception; ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java index 3bcb80c..bef03f0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerService.java @@ -16,7 +16,7 @@ List customerList(CustomerListRequest request) throws Exception; - ReturnDTO addCustomer(CustomerInfo customerInfo); + ReturnDTO addCustomer(CustomerInfo customerInfo) throws Exception; ReturnDTO updateCustomer(CustomerInfo customerInfo); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java index 8668cc7..24ce44f 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/equipment/IEquipmentFixedAssetsService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.equipment.EquipmentOrSampleDto; import com.casic.missiles.dto.equipment.FixedAssetRequest; import com.casic.missiles.model.equipment.EquipmentFixedAssets; import com.casic.missiles.model.equipment.EquipmentStateChangeLog; @@ -48,4 +49,6 @@ ReturnDTO queryUseLogList(Long id) throws Exception; ReturnDTO queryStateChangeLogList(Long id) throws Exception; + + Page queryEquipment(Page page, EquipmentOrSampleDto request) throws Exception; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java index c83b68c..b5867a9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java @@ -30,6 +30,8 @@ ReturnDTO deleteBatchSign(List ids); + List usableSign(); + List list(SignListRequest request); ReturnDTO signDetail(Long id);