From c758c4e55d74a34902dac5752ff4f160118b19bc Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 23 九月 2025 14:09:36 +0800 Subject: [PATCH] 资产借用接口 --- ruoyi-system/src/main/java/com/ruoyi/system/emums/ApprovalTypeEnum.java | 2 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java | 7 ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageVehicleDetailVO.java | 11 + ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationAssetService.java | 11 + ruoyi-system/src/main/java/com/ruoyi/system/mapper/OaApprovalApplicationAssetMapper.java | 4 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java | 69 ++++++--- ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationAssetMapper.xml | 7 ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetBorrowDTO.java | 68 +++++++++ ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationStorageMapper.xml | 2 ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageGeneralDetailVO.java | 12 + ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationStorageService.java | 18 + ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetPageVO.java | 9 ruoyi-system/src/main/java/com/ruoyi/system/emums/AssetOperateTypeEnum.java | 23 +++ ruoyi-system/src/main/java/com/ruoyi/system/query/OaApprovalApplicationAssetPageQuery.java | 5 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java | 2 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationAssetController.java | 30 ++++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationStorageController.java | 11 ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetDetailVO.java | 3 ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetReceiveDTO.java | 38 ++--- ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStoragePropertyDetailVO.java | 11 + ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationAssetServiceImpl.java | 40 +++-- 21 files changed, 283 insertions(+), 100 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationAssetController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationAssetController.java index 7540da5..c83e622 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationAssetController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationAssetController.java @@ -13,6 +13,7 @@ import com.ruoyi.system.vo.asset.OaApprovalApplicationAssetDetailVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; @@ -42,7 +43,7 @@ @PostMapping("/submit-receive") @Log(title = "资产领用申请-提交", businessType = BusinessType.INSERT) public R<Void> submitReceive(@Valid @RequestBody OaApprovalApplicationAssetReceiveDTO dto) { - oaApprovalApplicationAssetService.submitReceive(dto); + oaApprovalApplicationAssetService.submitReceiveBorrow(dto); return R.ok(); } @@ -65,9 +66,34 @@ @ApiOperation("获取资产领用详情") @GetMapping("/detail/receive/{id}") - public R<OaApprovalApplicationAssetDetailVO> getReceiveDetail(@PathVariable Integer id) { + public R<OaApprovalApplicationAssetDetailVO> getReceiveDetail(@ApiParam(name = "id", value = "审批单ID", required = true) @PathVariable Integer id) { OaApprovalApplicationAssetDetailVO detail = oaApprovalApplicationAssetService.getDetail(id); return R.ok(detail); } + @ApiOperation("提交资产借用申请") + @PostMapping("/submit-borrow") + @Log(title = "资产借用申请-提交", businessType = BusinessType.INSERT) + public R<Void> submitBorrow(@Valid @RequestBody OaApprovalApplicationAssetReceiveDTO dto) { + oaApprovalApplicationAssetService.submitReceiveBorrow(dto); + return R.ok(); + } + + @ApiOperation("获取资产借用申请分页列表") + @PostMapping("/page-borrow-list") + public R<IPage<OaApprovalApplicationAssetPageVO>> getBorrowPageList(@RequestBody OaApprovalApplicationAssetPageQuery pageQuery) { + // 数据权限:非管理员仅能查看本部门 + Long userId = SecurityUtils.getUserId(); + boolean isAdmin = SecurityUtils.isAdmin(userId); + if (!isAdmin) { + try { + pageQuery.setDeptId(Integer.valueOf(SecurityUtils.getDeptId())); + } catch (Exception e) { + // ignore parse, leave null if cannot parse + } + } + IPage<OaApprovalApplicationAssetPageVO> page = oaApprovalApplicationAssetService.getBorrowPageList(pageQuery); + return R.ok(page); + } + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationStorageController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationStorageController.java index a390c76..515d92c 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationStorageController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationStorageController.java @@ -23,6 +23,7 @@ import com.ruoyi.system.vo.asset.OaApprovalApplicationStorageVehicleDetailVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; @@ -137,28 +138,28 @@ @ApiOperation("删除资产入库申请") @DeleteMapping("/{id}") @Log(title = "资产入库申请-删除", businessType = BusinessType.DELETE) - public R<Void> delete(@PathVariable Integer id) { - oaApprovalApplicationStorageService.removeById(id); + public R<Void> delete(@ApiParam(name = "id",value = "审批单ID",required = true) @PathVariable Integer id) { + oaApprovalApplicationStorageService.removeByApplicationId(id); return R.ok(); } @ApiOperation("获取通用资产入库申请详情") @GetMapping("/detail/general/{id}") - public R<OaApprovalApplicationStorageGeneralDetailVO> getGeneralDetail(@PathVariable Integer id) { + public R<OaApprovalApplicationStorageGeneralDetailVO> getGeneralDetail(@ApiParam(name = "id",value = "审批单ID",required = true) @PathVariable Integer id) { OaApprovalApplicationStorageGeneralDetailVO detail = oaApprovalApplicationStorageService.getGeneralDetail(id); return R.ok(detail); } @ApiOperation("获取房产资产入库申请详情") @GetMapping("/detail/property/{id}") - public R<OaApprovalApplicationStoragePropertyDetailVO> getPropertyDetail(@PathVariable Integer id) { + public R<OaApprovalApplicationStoragePropertyDetailVO> getPropertyDetail(@ApiParam(name = "id",value = "审批单ID",required = true) @PathVariable Integer id) { OaApprovalApplicationStoragePropertyDetailVO detail = oaApprovalApplicationStorageService.getPropertyDetail(id); return R.ok(detail); } @ApiOperation("获取车辆资产入库申请详情") @GetMapping("/detail/vehicle/{id}") - public R<OaApprovalApplicationStorageVehicleDetailVO> getVehicleDetail(@PathVariable Integer id) { + public R<OaApprovalApplicationStorageVehicleDetailVO> getVehicleDetail(@ApiParam(name = "id",value = "审批单ID",required = true) @PathVariable Integer id) { OaApprovalApplicationStorageVehicleDetailVO detail = oaApprovalApplicationStorageService.getVehicleDetail(id); return R.ok(detail); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java index 215f41e..e1321c2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalFlowAuditController.java @@ -721,7 +721,7 @@ BorrowDetailVO res = new BorrowDetailVO(); List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BURROW.getCode()) + .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BORROW.getCode()) .orderByAsc(OaApprovalFlowNode::getSortOrder) .eq(OaApprovalFlowNode::getStatus, 1).list(); SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java index 24058d2..4991f78 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalTodoController.java @@ -1,23 +1,18 @@ package com.ruoyi.web.controller.api; -import com.ruoyi.common.annotation.Log; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.TDept; -import com.ruoyi.common.enums.BusinessType; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.emums.ApprovalTypeEnum; import com.ruoyi.system.model.*; import com.ruoyi.system.query.ApprovalDetailQuery; import com.ruoyi.system.query.ApprovalTodoListQuery; -import com.ruoyi.system.query.NotificationListQuery; import com.ruoyi.system.service.*; import com.ruoyi.system.vo.*; -import com.ruoyi.system.vo.system.NotificationVO; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.util.StringUtils; @@ -651,7 +646,7 @@ BorrowDetailVO res = new BorrowDetailVO(); List<OaApprovalFlowNode> approvalFlowNodes = approvalFlowNodeService.lambdaQuery() - .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BURROW.getCode()) + .eq(OaApprovalFlowNode::getApprovalId, ApprovalTypeEnum.BORROW.getCode()) .orderByAsc(OaApprovalFlowNode::getSortOrder) .eq(OaApprovalFlowNode::getStatus, 1).list(); SysUser sysUser = sysUserService.selectUserById(approvalApplications.getApplicantUserId().longValue()); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetBorrowDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetBorrowDTO.java new file mode 100644 index 0000000..af18888 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetBorrowDTO.java @@ -0,0 +1,68 @@ +package com.ruoyi.system.dto.asset; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.time.LocalDate; +import java.util.List; + +/** + * 资产领用申请 DTO + */ +@Data +@ApiModel("资产借用申请DTO") +public class OaApprovalApplicationAssetBorrowDTO implements Serializable { + private static final long serialVersionUID = 2025091801L; + // 公共字段:领用部门、领用人、领用备注 + @ApiModelProperty("操作类型 0-领用,1-借用,2-归还") + @NotNull(message = "操作类型不能为空") + private Integer type; + @ApiModelProperty("领用/借用部门ID") + @NotNull(message = "领用/借用部门不能为空") + private Integer deptId; + + @ApiModelProperty("领用/借用部门名称") + @NotNull(message = "领用/借用部门名称不能为空") + private String deptName; + + @ApiModelProperty("领用/借用人用户ID") + private Integer applicantUserId; + + @ApiModelProperty("领用/借用人名称") + private String applicantName; + + @ApiModelProperty("领用/借用备注") + private String applicationReason; + + @ApiModelProperty("附件URL,多个使用英文逗号拼接") + private String attachmentUrl; + + // 独有字段:事项标题、领用日期、资产类型、预计退还日期、领用资产列表 + @ApiModelProperty("事项标题") + @NotNull(message = "事项标题不能为空") + private String title; + + @ApiModelProperty("领用/借用日期") + @NotNull(message = "领用/借用日期不能为空") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate operateTime; + + @ApiModelProperty("资产类型ID") + @NotNull(message = "资产类型不能为空") + private Integer assetTypeId; + + @ApiModelProperty("预计退还日期,借用必填") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate expectReturnDate; + + @ApiModelProperty("领用资产列表") + @NotEmpty(message = "领用资产列表不能为空") + private List<Integer> assetMainIds; + +} + diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetReceiveDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetReceiveDTO.java index c151a49..a028cbb 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetReceiveDTO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/asset/OaApprovalApplicationAssetReceiveDTO.java @@ -20,23 +20,27 @@ private static final long serialVersionUID = 2025091801L; // 公共字段:领用部门、领用人、领用备注 - @ApiModelProperty("领用部门ID") - @NotNull(message = "领用部门不能为空") + @ApiModelProperty("操作类型 0-领用,1-借用,2-归还") + @NotNull(message = "操作类型不能为空") + private Integer type; + + @ApiModelProperty("领用/借用部门ID") + @NotNull(message = "领用/借用部门不能为空") private Integer deptId; - @ApiModelProperty("领用部门名称") - @NotNull(message = "领用部门名称不能为空") + @ApiModelProperty("领用/借用部门名称") + @NotNull(message = "领用/借用部门名称不能为空") private String deptName; - @ApiModelProperty("领用人用户ID") - @NotNull(message = "领用人不能为空") + @ApiModelProperty("领用/借用人用户ID") + @NotNull(message = "领用/借用人不能为空") private Integer applicantUserId; - @ApiModelProperty("领用人名称") - @NotNull(message = "领用人名称不能为空") + @ApiModelProperty("领用/借用人名称") + @NotNull(message = "领用/借用人名称不能为空") private String applicantName; - @ApiModelProperty("领用备注") + @ApiModelProperty("领用/借用备注") private String applicationReason; @ApiModelProperty("附件URL,多个使用英文逗号拼接") @@ -47,8 +51,8 @@ @NotNull(message = "事项标题不能为空") private String title; - @ApiModelProperty("领用日期") - @NotNull(message = "领用日期不能为空") + @ApiModelProperty("领用/借用日期") + @NotNull(message = "领用/借用日期不能为空") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate operateTime; @@ -56,21 +60,13 @@ @NotNull(message = "资产类型不能为空") private Integer assetTypeId; - @ApiModelProperty("预计退还日期,可为空") + @ApiModelProperty("预计退还日期,借用必填") @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate expectReturnDate; @ApiModelProperty("领用资产列表") @NotEmpty(message = "领用资产列表不能为空") - private List<ReceiveAssetItemDTO> assetItems; + private List<Integer> assetMainIds; - @Data - public static class ReceiveAssetItemDTO implements Serializable { - private static final long serialVersionUID = 1L; - - @ApiModelProperty("资产主表ID") - @NotNull(message = "资产ID不能为空") - private Integer assetMainId; - } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/emums/ApprovalTypeEnum.java b/ruoyi-system/src/main/java/com/ruoyi/system/emums/ApprovalTypeEnum.java index 9adf171..4970abf 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/emums/ApprovalTypeEnum.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/emums/ApprovalTypeEnum.java @@ -12,7 +12,7 @@ PURCHASE(5, "采购申请"), IN_STOCK(6, "资产入库"), GRAB(7, "物品领用"), - BURROW(8, "物品借用"), + BORROW(8, "物品借用"), RETURN(9, "借用归还"), ASSET_DISPOSE(10, "资产处置"), ASSET_CHANGE(11, "资产表更"), diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/emums/AssetOperateTypeEnum.java b/ruoyi-system/src/main/java/com/ruoyi/system/emums/AssetOperateTypeEnum.java new file mode 100644 index 0000000..d0d48bb --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/emums/AssetOperateTypeEnum.java @@ -0,0 +1,23 @@ +package com.ruoyi.system.emums; + +import lombok.Getter; +import lombok.AllArgsConstructor; +@Getter +@AllArgsConstructor +public enum AssetOperateTypeEnum { + RECEIVE(0, "领用"), + BORROW(1, "借用"), + RETURN(2, "归还"); + + private final Integer code; + private final String desc; + + public static AssetOperateTypeEnum getEnumByCode(Integer code) { + for (AssetOperateTypeEnum e : AssetOperateTypeEnum.values()) { + if (e.code.equals(code)) { + return e; + } + } + return null; + } +} \ No newline at end of file diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/OaApprovalApplicationAssetMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/OaApprovalApplicationAssetMapper.java index 862157f..848141c 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/OaApprovalApplicationAssetMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/OaApprovalApplicationAssetMapper.java @@ -18,6 +18,6 @@ */ public interface OaApprovalApplicationAssetMapper extends BaseMapper<OaApprovalApplicationAsset> { - IPage<OaApprovalApplicationAssetPageVO> selectReceivePage(Page<OaApprovalApplicationAssetPageVO> page, - @Param("query") OaApprovalApplicationAssetPageQuery query); + IPage<OaApprovalApplicationAssetPageVO> getPageByType(Page<OaApprovalApplicationAssetPageVO> page, + @Param("query") OaApprovalApplicationAssetPageQuery query); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/query/OaApprovalApplicationAssetPageQuery.java b/ruoyi-system/src/main/java/com/ruoyi/system/query/OaApprovalApplicationAssetPageQuery.java index 9c63463..7414d54 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/query/OaApprovalApplicationAssetPageQuery.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/query/OaApprovalApplicationAssetPageQuery.java @@ -18,7 +18,10 @@ @ApiModelProperty("关键词(标题/单据号/部门/领用人)") private String keyword; - @ApiModelProperty("部门ID(非管理员时作为数据权限过滤)") + @ApiModelProperty("部门ID(非管理员时作为数据权限过滤),前端不传") private Integer deptId; + + @ApiModelProperty("操作类型 前端不传") + private Integer type; // 0-领用,1-借用,2-归还 } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationAssetService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationAssetService.java index e1b747b..840988e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationAssetService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationAssetService.java @@ -19,10 +19,10 @@ public interface OaApprovalApplicationAssetService extends IService<OaApprovalApplicationAsset> { /** - * 提交资产领用申请 + * 提交资产领用/归还申请 * @param dto 领用申请DTO */ - void submitReceive(OaApprovalApplicationAssetReceiveDTO dto); + void submitReceiveBorrow(OaApprovalApplicationAssetReceiveDTO dto); /** * 获取资产领用申请分页列表 @@ -34,4 +34,11 @@ * @param id 领用/借用/归还明细表ID(oa_approval_application_asset.id) */ OaApprovalApplicationAssetDetailVO getDetail(Integer id); + + /** + * 获取借用资产申请列表 + * @param pageQuery + * @return + */ + IPage<OaApprovalApplicationAssetPageVO> getBorrowPageList(OaApprovalApplicationAssetPageQuery pageQuery); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationStorageService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationStorageService.java index 2df657c..7472d53 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationStorageService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/OaApprovalApplicationStorageService.java @@ -55,21 +55,27 @@ /** * 获取通用资产入库申请详情 - * @param storageId 入库申请存储表ID + * @param approvalApplicationId 入库申请存储表ID */ - OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer storageId); + OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer approvalApplicationId); /** * 获取房产资产入库申请详情 - * @param storageId 入库申请存储表ID + * @param approvalApplicationId 入库申请存储表ID */ - OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer storageId); + OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer approvalApplicationId); /** * 获取车辆资产入库申请详情 - * @param storageId 入库申请存储表ID + * @param approvalApplicationId 入库申请存储表ID */ - OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer storageId); + OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer approvalApplicationId); PageInfo<StorageListVO> pageList(ApprovalDetailQuery query); + + /** + * 根据审批单ID删除入库申请 + * @param id + */ + void removeByApplicationId(Integer id); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationAssetServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationAssetServiceImpl.java index 051d780..d87033e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationAssetServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationAssetServiceImpl.java @@ -7,6 +7,7 @@ import com.ruoyi.system.dto.asset.OaApprovalApplicationAssetReceiveDTO; import com.ruoyi.system.emums.ApprovalStatusEnum; import com.ruoyi.system.emums.ApprovalTypeEnum; +import com.ruoyi.system.emums.AssetOperateTypeEnum; import com.ruoyi.system.mapper.OaApprovalApplicationAssetMapper; import com.ruoyi.system.model.OaApprovalApplicationAsset; import com.ruoyi.system.model.OaApprovalApplicationAssetItem; @@ -49,32 +50,33 @@ @Override @Transactional(rollbackFor = Exception.class) - public void submitReceive(OaApprovalApplicationAssetReceiveDTO dto) { - if (CollectionUtils.isEmpty(dto.getAssetItems())) { - throw new ServiceException("领用资产列表不能为空"); + public void submitReceiveBorrow(OaApprovalApplicationAssetReceiveDTO dto) { + if (CollectionUtils.isEmpty(dto.getAssetMainIds())) { + throw new ServiceException("领用资产ID列表不能为空"); } // 1. 构建并保存审批主表 OaApprovalApplications applications = buildOaApprovalApplications(dto); // 2. 获取流程首节点,设置当前节点,并保存 - OaApprovalFlowNode firstFlowNode = getFirstFlowNode(ApprovalTypeEnum.GRAB.getCode()); + OaApprovalFlowNode firstFlowNode = getFirstFlowNode(dto.getType().equals(AssetOperateTypeEnum.RECEIVE.getCode()) ? + ApprovalTypeEnum.GRAB.getCode() : ApprovalTypeEnum.BORROW.getCode()); applications.setCurrentFlowNodeId(firstFlowNode.getId()); oaApprovalApplicationsService.save(applications); // 3. 创建待办 oaApprovalTodoService.createApprovalTodos(applications.getId(), applications.getApplicationCode(), firstFlowNode, dto.getDeptId()); - // 4. 保存领用明细 + // 4. 保存领用/借用明细 OaApprovalApplicationAsset detail = buildOaApprovalApplicationAsset(dto, applications.getId()); this.save(detail); // 5. 保存关联的资产项 - List<OaApprovalApplicationAssetItem> items = dto.getAssetItems().stream() + List<OaApprovalApplicationAssetItem> items = dto.getAssetMainIds().stream() .map(i -> { OaApprovalApplicationAssetItem item = new OaApprovalApplicationAssetItem(); item.setApprovalApplicationId(applications.getId()); - item.setAssetMainId(i.getAssetMainId()); + item.setAssetMainId(i); return item; }) .collect(Collectors.toList()); @@ -115,8 +117,7 @@ asset.setTitle(dto.getTitle()); asset.setAssetTypeId(dto.getAssetTypeId()); asset.setOperateTime(dto.getOperateTime()); - asset.setExpectReturnDate(dto.getExpectReturnDate()); - asset.setType(0); // 0-领用 + asset.setType(AssetOperateTypeEnum.RECEIVE.getCode()); return asset; } @@ -139,19 +140,21 @@ @Override public IPage<OaApprovalApplicationAssetPageVO> getReceivePageList(OaApprovalApplicationAssetPageQuery pageQuery) { Page<OaApprovalApplicationAssetPageVO> page = new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()); - return this.baseMapper.selectReceivePage(page, pageQuery); + pageQuery.setType(0);//领用 + return this.baseMapper.getPageByType(page, pageQuery); } @Override public OaApprovalApplicationAssetDetailVO getDetail(Integer id) { - OaApprovalApplicationAsset detail = this.getById(id); - if (detail == null) { - throw new ServiceException("记录不存在"); - } - OaApprovalApplications app = oaApprovalApplicationsService.getById(detail.getApprovalApplicationId()); + OaApprovalApplications app = oaApprovalApplicationsService.getById(id); if (app == null) { throw new ServiceException("审批主记录不存在"); } + OaApprovalApplicationAsset detail = this.lambdaQuery().eq(OaApprovalApplicationAsset::getApprovalApplicationId, app.getId()).one(); + if (detail == null) { + throw new ServiceException("记录不存在"); + } + List<OaApprovalApplicationAssetItem> items = oaApprovalApplicationAssetItemService.lambdaQuery() .eq(OaApprovalApplicationAssetItem::getApprovalApplicationId, app.getId()) .list(); @@ -160,4 +163,11 @@ vo.setItems(items); return vo; } + + @Override + public IPage<OaApprovalApplicationAssetPageVO> getBorrowPageList(OaApprovalApplicationAssetPageQuery pageQuery) { + Page<OaApprovalApplicationAssetPageVO> page = new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()); + pageQuery.setType(1); + return this.baseMapper.getPageByType(page, pageQuery); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java index 5c9f687..7dfc6c6 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalApplicationStorageServiceImpl.java @@ -523,14 +523,15 @@ } @Override - public OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer storageId) { - OaApprovalApplicationStorage storage = this.getById(storageId); - if (storage == null) { - throw new ServiceException("入库申请不存在"); - } - OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId()); + public OaApprovalApplicationStorageGeneralDetailVO getGeneralDetail(Integer approvalApplicationId) { + OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId); if (app == null) { throw new ServiceException("审批主记录不存在"); + } + OaApprovalApplicationStorage storage = this.lambdaQuery() + .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one(); + if (storage == null) { + throw new ServiceException("入库申请不存在"); } OaApprovalApplicationStorageGeneralDetailVO vo = new OaApprovalApplicationStorageGeneralDetailVO(); @@ -549,18 +550,18 @@ // 批量查询使用部门 List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); - Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap() + Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap() : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d)); // 批量查询仓库 List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap() - : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); + : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); List<OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO> items = mains.stream().map(m -> { OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStorageGeneralDetailVO.GeneralAssetItemVO.class); if (m.getOwnershipDeptId() != null) { TDept dept = ownerDeptMap.get(m.getOwnershipDeptId()); - item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null); + item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null); } if (m.getAddressType().equals(0) && m.getUseDeptId() != null) { TDept dept = useDeptMap.get(m.getUseDeptId()); @@ -577,14 +578,15 @@ } @Override - public OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer storageId) { - OaApprovalApplicationStorage storage = this.getById(storageId); - if (storage == null) { - throw new ServiceException("入库申请不存在"); - } - OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId()); + public OaApprovalApplicationStoragePropertyDetailVO getPropertyDetail(Integer approvalApplicationId) { + OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId); if (app == null) { throw new ServiceException("审批主记录不存在"); + } + OaApprovalApplicationStorage storage = this.lambdaQuery() + .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one(); + if (storage == null) { + throw new ServiceException("入库申请不存在"); } OaApprovalApplicationStoragePropertyDetailVO vo = new OaApprovalApplicationStoragePropertyDetailVO(); @@ -607,19 +609,19 @@ // 批量查询使用部门 List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); - Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap() + Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap() : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d)); // 批量查询仓库 List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap() - : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); + : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); List<OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO> items = mains.stream().map(m -> { OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStoragePropertyDetailVO.PropertyAssetItemVO.class); if (m.getOwnershipDeptId() != null) { TDept dept = ownerDeptMap.get(m.getOwnershipDeptId()); - item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null); + item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null); } if (m.getAddressType().equals(0) && m.getUseDeptId() != null) { TDept dept = useDeptMap.get(m.getUseDeptId()); @@ -655,14 +657,15 @@ } @Override - public OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer storageId) { - OaApprovalApplicationStorage storage = this.getById(storageId); - if (storage == null) { - throw new ServiceException("入库申请不存在"); - } - OaApprovalApplications app = oaApprovalApplicationsService.getById(storage.getApprovalApplicationId()); + public OaApprovalApplicationStorageVehicleDetailVO getVehicleDetail(Integer approvalApplicationId) { + OaApprovalApplications app = oaApprovalApplicationsService.getById(approvalApplicationId); if (app == null) { throw new ServiceException("审批主记录不存在"); + } + OaApprovalApplicationStorage storage = this.lambdaQuery() + .eq(OaApprovalApplicationStorage::getApprovalApplicationId, approvalApplicationId).one(); + if (storage == null) { + throw new ServiceException("入库申请不存在"); } OaApprovalApplicationStorageVehicleDetailVO vo = new OaApprovalApplicationStorageVehicleDetailVO(); @@ -685,18 +688,18 @@ // 批量查询使用部门 List<Integer> useDeptIds = mains.stream().map(OaApprovalApplicationStorageAsset::getUseDeptId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); - Map<Integer, TDept> useDeptMap = ownerIds.isEmpty() ? Collections.emptyMap() + Map<Integer, TDept> useDeptMap = useDeptIds.isEmpty() ? Collections.emptyMap() : tDeptService.listByIds(useDeptIds).stream().collect(Collectors.toMap(TDept::getId, d -> d)); // 批量查询仓库 List<Integer> warehouseIds = mains.stream().map(OaApprovalApplicationStorageAsset::getWarehouseId) .filter(Objects::nonNull).distinct().collect(Collectors.toList()); Map<Integer, AssetWarehouse> warehouseMap = warehouseIds.isEmpty() ? Collections.emptyMap() - : assetWarehouseService.listByIds(useDeptIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); + : assetWarehouseService.listByIds(warehouseIds).stream().collect(Collectors.toMap(AssetWarehouse::getId, d -> d)); List<OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO> items = mains.stream().map(m -> { OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO item = BeanUtil.copyProperties(m, OaApprovalApplicationStorageVehicleDetailVO.VehicleAssetItemVO.class); if (m.getOwnershipDeptId() != null) { TDept dept = ownerDeptMap.get(m.getOwnershipDeptId()); - item.setOwnerShipDeptName(dept != null ? dept.getDeptName() : null); + item.setOwnershipDeptName(dept != null ? dept.getDeptName() : null); } if (m.getAddressType().equals(0) && m.getUseDeptId() != null) { TDept dept = useDeptMap.get(m.getUseDeptId()); @@ -730,6 +733,7 @@ v.setDeptName(app.getDeptName()); v.setApplicantUserId(app.getApplicantUserId()); v.setApplicantName(app.getApplicantName()); + v.setApprovalStatus(app.getApprovalStatus()); v.setApplicationDate(app.getApplicationDate()); v.setApplicationReason(app.getApplicationReason()); v.setAttachmentUrl(app.getAttachmentUrl()); @@ -743,6 +747,7 @@ v.setDeptName(app.getDeptName()); v.setApplicantUserId(app.getApplicantUserId()); v.setApplicantName(app.getApplicantName()); + v.setApprovalStatus(app.getApprovalStatus()); v.setApplicationDate(app.getApplicationDate()); v.setApplicationReason(app.getApplicationReason()); v.setAttachmentUrl(app.getAttachmentUrl()); @@ -756,6 +761,7 @@ v.setDeptName(app.getDeptName()); v.setApplicantUserId(app.getApplicantUserId()); v.setApplicantName(app.getApplicantName()); + v.setApprovalStatus(app.getApprovalStatus()); v.setApplicationDate(app.getApplicationDate()); v.setApplicationReason(app.getApplicationReason()); v.setAttachmentUrl(app.getAttachmentUrl()); @@ -773,4 +779,13 @@ pageInfo.setRecords(list); return pageInfo; } + + @Transactional(rollbackFor = Exception.class) + @Override + public void removeByApplicationId(Integer id) { + //删除入库申请相关数据 + this.lambdaUpdate().eq(OaApprovalApplicationStorage::getApprovalApplicationId, id).remove(); + //删除入库申请单 + oaApprovalApplicationsService.removeById(id); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetDetailVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetDetailVO.java index a3eea4e..87fa269 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetDetailVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetDetailVO.java @@ -42,7 +42,7 @@ @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate applicationDate; - @ApiModelProperty(value = "事由/原因/说明") + @ApiModelProperty(value = "事由/原因/说明/备注") private String applicationReason; @ApiModelProperty(value = "审批状态 0-草稿,1-待审批,2-审批通过,3-审批拒绝 ,4-已撤回") @@ -64,6 +64,7 @@ private LocalDate operateTime; @ApiModelProperty(value = "预计退还日期") + @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate expectReturnDate; @ApiModelProperty(value = "操作类型 0-领用,1-借用,2-归还") diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetPageVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetPageVO.java index c420e67..92c1663 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetPageVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationAssetPageVO.java @@ -25,10 +25,10 @@ @ApiModelProperty("标题") private String title; - @ApiModelProperty("领用部门") + @ApiModelProperty("领用/借用部门") private String deptName; - @ApiModelProperty("领用人") + @ApiModelProperty("领用/借用人") private String applicantName; @ApiModelProperty("资产一级类型名称") @@ -37,11 +37,14 @@ @ApiModelProperty("资产二级类型名称") private String secondAssetTypeName; - @ApiModelProperty("领用日期") + @ApiModelProperty("领用/借用日期") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate operateTime; @ApiModelProperty("状态 0-草稿,1-待审批,2-通过,3-拒绝,4-撤回") private Integer approvalStatus; + + @ApiModelProperty("归还状态 0-待归还,1-部分归还,2-全部归还") + private Integer returnStatus; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageGeneralDetailVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageGeneralDetailVO.java index 291c6e8..a1a6221 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageGeneralDetailVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageGeneralDetailVO.java @@ -29,6 +29,9 @@ @ApiModelProperty(value = "申请人姓名") private String applicantName; + @ApiModelProperty(value = "审批状态 0-草稿,1-待审批,2-审批通过,3-审批拒绝 ,4-已撤回") + private Integer approvalStatus; + @ApiModelProperty(value = "申请日期") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate applicationDate; @@ -58,11 +61,18 @@ @Data @ApiModel("通用资产明细VO") public static class GeneralAssetItemVO implements Serializable { + + @ApiModelProperty(value = "资产主表ID") + private Integer id; + @ApiModelProperty(value = "资产原编码") private String assetOriginalCode; @ApiModelProperty(value = "资产名称") private String assetName; + + @ApiModelProperty(value = "类别") + private String category; @ApiModelProperty(value = "规格型号") private String specificationModel; @@ -80,7 +90,7 @@ private Integer usefulLife; @ApiModelProperty(value = "权属单位/部门名称") - private String ownerShipDeptName; + private String ownershipDeptName; @ApiModelProperty(value = "使用人") private String userName; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStoragePropertyDetailVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStoragePropertyDetailVO.java index 04b89c9..7586819 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStoragePropertyDetailVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStoragePropertyDetailVO.java @@ -29,6 +29,9 @@ @ApiModelProperty(value = "申请人姓名") private String applicantName; + @ApiModelProperty(value = "审批状态 0-草稿,1-待审批,2-审批通过,3-审批拒绝 ,4-已撤回") + private Integer approvalStatus; + @ApiModelProperty(value = "申请日期") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate applicationDate; @@ -58,11 +61,17 @@ @Data @ApiModel("房产资产明细VO") public static class PropertyAssetItemVO implements Serializable { + @ApiModelProperty(value = "资产主表ID") + private Integer id; + @ApiModelProperty(value = "资产原编码") private String assetOriginalCode; @ApiModelProperty(value = "资产名称") private String assetName; + + @ApiModelProperty(value = "类别") + private String category; @ApiModelProperty(value = "规格型号") private String specificationModel; @@ -80,7 +89,7 @@ private Integer usefulLife; @ApiModelProperty(value = "权属单位/部门名称") - private String ownerShipDeptName; + private String ownershipDeptName; @ApiModelProperty(value = "使用人") private String userName; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageVehicleDetailVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageVehicleDetailVO.java index c1a2fbf..f250691 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageVehicleDetailVO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/asset/OaApprovalApplicationStorageVehicleDetailVO.java @@ -29,6 +29,9 @@ @ApiModelProperty(value = "申请人姓名") private String applicantName; + @ApiModelProperty(value = "审批状态 0-草稿,1-待审批,2-审批通过,3-审批拒绝 ,4-已撤回") + private Integer approvalStatus; + @ApiModelProperty(value = "申请日期") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate applicationDate; @@ -58,11 +61,17 @@ @Data @ApiModel("车辆资产明细VO") public static class VehicleAssetItemVO implements Serializable { + @ApiModelProperty(value = "资产主表ID") + private Integer id; + @ApiModelProperty(value = "资产原编码") private String assetOriginalCode; @ApiModelProperty(value = "资产名称") private String assetName; + + @ApiModelProperty(value = "类别") + private String category; @ApiModelProperty(value = "规格型号") private String specificationModel; @@ -80,7 +89,7 @@ private Integer usefulLife; @ApiModelProperty(value = "权属单位/部门名称") - private String ownerShipDeptName; + private String ownershipDeptName; @ApiModelProperty(value = "使用人") private String userName; diff --git a/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationAssetMapper.xml b/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationAssetMapper.xml index 4f1cd2e..c6ead5d 100644 --- a/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationAssetMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationAssetMapper.xml @@ -20,9 +20,9 @@ </sql> <!-- 分页查询:资产领用申请列表(关联审批记录与资产类型) --> - <select id="selectReceivePage" resultType="com.ruoyi.system.vo.asset.OaApprovalApplicationAssetPageVO"> + <select id="getPageByType" resultType="com.ruoyi.system.vo.asset.OaApprovalApplicationAssetPageVO"> SELECT - oaa.id AS id, + aaa.id AS id, aaa.application_code AS applicationCode, oaa.title AS title, aaa.dept_name AS deptName, @@ -31,13 +31,14 @@ CASE WHEN at2.level = 2 THEN at2.type_name ELSE NULL END AS secondAssetTypeName, oaa.operate_time AS operateTime, aaa.approval_status AS approvalStatus + oaa.return_status AS returnStatus FROM oa_approval_application_asset oaa INNER JOIN oa_approval_applications aaa ON aaa.id = oaa.approval_application_id LEFT JOIN asset_type at2 ON at2.id = oaa.asset_type_id LEFT JOIN asset_type at1 ON at1.id = (CASE WHEN at2.level = 2 THEN at2.parent_id ELSE at2.id END) <where> AND aaa.disabled = 0 - AND oaa.type = 0 + AND oaa.type = #{query.type} <if test="query != null and query.keyword != null and query.keyword != ''"> AND ( oaa.title LIKE CONCAT('%', #{query.keyword}, '%') diff --git a/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationStorageMapper.xml b/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationStorageMapper.xml index 94db2a5..1332ce7 100644 --- a/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationStorageMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationStorageMapper.xml @@ -20,7 +20,7 @@ <!-- 分页查询:资产入库申请列表(关联审批记录与资产类型) --> <select id="selectApplicationStoragePage" resultType="com.ruoyi.system.vo.asset.OaApprovalApplicationStoragePageVO"> SELECT - oas.id AS id, + aaa.id AS id, oas.asset_type_id AS assetTypeId, aaa.dept_name AS deptName, aaa.application_code AS applicationCode, -- Gitblit v1.7.1