| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.common.exception.ServiceException; |
| | | import com.ruoyi.system.dto.dispose.OaApprovalApplicationDisposeDTO; |
| | | import com.ruoyi.system.dto.asset.OaApprovalApplicationDisposeDTO; |
| | | import com.ruoyi.system.emums.ApprovalStatusEnum; |
| | | import com.ruoyi.system.emums.ApprovalTypeEnum; |
| | | import com.ruoyi.system.mapper.OaApprovalApplicationDisposeMapper; |
| | |
| | | import com.ruoyi.system.model.OaApprovalApplications; |
| | | import com.ruoyi.system.model.OaApprovalFlowNode; |
| | | import com.ruoyi.system.query.OaApprovalApplicationDisposePageQuery; |
| | | import com.ruoyi.system.service.AssetMainService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationAssetItemService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationDisposeService; |
| | | import com.ruoyi.system.service.OaApprovalApplicationsService; |
| | | import com.ruoyi.system.service.OaApprovalFlowNodeService; |
| | | import com.ruoyi.system.service.OaApprovalTodoService; |
| | | import com.ruoyi.system.vo.dispose.OaApprovalApplicationDisposePageVO; |
| | | import com.ruoyi.system.vo.asset.AssetMainVO; |
| | | import com.ruoyi.system.vo.asset.OaApprovalApplicationDisposeDetailVO; |
| | | import com.ruoyi.system.vo.asset.OaApprovalApplicationDisposePageVO; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | |
| | | |
| | | import java.time.LocalDate; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | private final OaApprovalFlowNodeService oaApprovalFlowNodeService; |
| | | private final OaApprovalTodoService oaApprovalTodoService; |
| | | private final OaApprovalApplicationAssetItemService oaApprovalApplicationAssetItemService; |
| | | private final AssetMainService assetMainService; |
| | | |
| | | @Override |
| | | public IPage<OaApprovalApplicationDisposePageVO> getDisposePageList(OaApprovalApplicationDisposePageQuery pageQuery) { |
| | |
| | | oaApprovalApplicationAssetItemService.lambdaUpdate().eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, applicationId).remove(); |
| | | oaApprovalApplicationsService.removeById(applicationId); |
| | | } |
| | | |
| | | @Override |
| | | public OaApprovalApplicationDisposeDetailVO getDisposeDetail(Integer id) { |
| | | OaApprovalApplications app = oaApprovalApplicationsService.getById(id); |
| | | if (app == null) { |
| | | throw new ServiceException("审批主记录不存在"); |
| | | } |
| | | OaApprovalApplicationDispose detail = this.lambdaQuery().eq(OaApprovalApplicationDispose::getApprovalApplicationId, app.getId()).one(); |
| | | if (detail == null) { |
| | | throw new ServiceException("记录不存在"); |
| | | } |
| | | oaApprovalApplicationsService.assembleApplicationDetail(app); |
| | | List<Integer> assetMainIds = oaApprovalApplicationAssetItemService.lambdaQuery() |
| | | .eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, app.getId()) |
| | | .list().stream().map(OaApprovalApplicationAssetItem::getAssetMainId) |
| | | .distinct().collect(Collectors.toList()); |
| | | |
| | | List<AssetMainVO> assetMainVOS = assetMainIds.isEmpty() ? Collections.emptyList() : assetMainService.getListByIds(assetMainIds); |
| | | OaApprovalApplicationDisposeDetailVO vo = BeanUtil.copyProperties(app, OaApprovalApplicationDisposeDetailVO.class); |
| | | vo.setTitle(detail.getTitle()); |
| | | vo.setAssetTypeId(detail.getAssetTypeId()); |
| | | vo.setDisposeTime(detail.getDisposeTime()); |
| | | vo.setDisposeType(detail.getDisposeType()); |
| | | vo.setDisposeTotalAmount(detail.getDisposeTotalAmount()); |
| | | vo.setItems(assetMainVOS); |
| | | return vo; |
| | | } |
| | | } |