From d4db651eec1921dca069cd9d61b9d3cdf99c3a14 Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Wed, 13 Nov 2024 10:19:50 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A2=86=E6=96=99=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/constant/MaterialConstants.java | 2 + .../material/lease/domain/LeaseApplyInfo.java | 5 + .../task/controller/TmTaskController.java | 32 +++++ .../task/domain/vo/TmTaskRequestVo.java | 23 +++- .../material/task/mapper/TmTaskMapper.java | 12 ++ .../material/task/service/ITmTaskService.java | 3 + .../task/service/impl/TmTaskServiceImpl.java | 56 ++++++++ .../mapper/material/task/TmTaskMapper.xml | 129 ++++++++++++++++++ 8 files changed, 256 insertions(+), 6 deletions(-) diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java index d7c57863..febaa032 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java @@ -49,6 +49,8 @@ public class MaterialConstants { */ public static final Integer TEN_CONSTANT = 10; + public final static String STRING_ADMIN = "admin"; + /** 协议号的开头字母 */ public static final String AGREEMENT_PREFIX = "H"; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/domain/LeaseApplyInfo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/domain/LeaseApplyInfo.java index b84a04e3..223aabde 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/domain/LeaseApplyInfo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/domain/LeaseApplyInfo.java @@ -1,6 +1,8 @@ package com.bonus.material.lease.domain; import java.util.Date; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonFormat; import com.bonus.common.core.annotation.Excel; import io.swagger.annotations.ApiModelProperty; @@ -127,5 +129,8 @@ public class LeaseApplyInfo extends BaseEntity { @ApiModelProperty(value = "费用承担方(01项目03分包)") private String costBearingParty; + /** 机具规格详情列表 */ + @ApiModelProperty(value = "机具规格详情列表") + List leaseApplyDetails; } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/controller/TmTaskController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/controller/TmTaskController.java index bea48ab8..67b9d693 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/controller/TmTaskController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/controller/TmTaskController.java @@ -2,8 +2,11 @@ package com.bonus.material.task.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.bonus.common.core.utils.StringUtils; import com.bonus.common.log.enums.OperaType; import com.bonus.material.common.annotation.PreventRepeatSubmit; +import com.bonus.material.task.domain.vo.TmTaskRequestVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -116,4 +119,33 @@ public class TmTaskController extends BaseController { public AjaxResult remove(@PathVariable Long[] taskIds) { return toAjax(tmTaskService.deleteTmTaskByTaskIds(taskIds)); } + + /** + * 查询机具领料申请列表(个人) + * + * @param task 筛选条件 + * @param souceBy app为1 web为0 + * @return 列表 + */ + @ApiOperation(value = "查询机具领料申请列表") + @PreventRepeatSubmit + @RequiresPermissions("task:task:query") + @SysLog(title = "任务", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->查询机具领料申请列表") + @GetMapping(value = "getLeaseAuditListAll") + public AjaxResult getLeaseAuditListAll(TmTaskRequestVo task, Integer souceBy) { + if (StringUtils.isNull(task)) { + return AjaxResult.error("参数错误"); + } + List leaseAuditList; + if (souceBy != null && souceBy == 1) { + leaseAuditList = tmTaskService.getLeaseAuditList(task); + return AjaxResult.success(leaseAuditList); + } else { + startPage(); + leaseAuditList = tmTaskService.getLeaseAuditList(task); + return AjaxResult.success(getDataTable(leaseAuditList)); + } + } + + } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/domain/vo/TmTaskRequestVo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/domain/vo/TmTaskRequestVo.java index 133e1cdf..18c9c619 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/domain/vo/TmTaskRequestVo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/domain/vo/TmTaskRequestVo.java @@ -42,12 +42,6 @@ public class TmTaskRequestVo extends BaseEntity { @ApiModelProperty(value = "任务当月序号 例如:1 插入及查询时请携带任务类型") private Integer monthOrder; - @ApiModelProperty(value = "领料任务汇总") - private LeaseApplyInfo leaseApplyInfo; - - @ApiModelProperty(value = "领料任务物资列表") - private List leaseApplyDetailsList; - @ApiModelProperty(value = "协议id") private Long agreementId; @@ -69,4 +63,21 @@ public class TmTaskRequestVo extends BaseEntity { @ApiModelProperty(value = "工程id") private Long projectId; + /** + * 预领料合计数 + */ + @ApiModelProperty(value = "预领料合计数") + private Integer preCountNum; + + /** + * 领料任务实体集合 + */ + @ApiModelProperty(value = "领料任务实体集合") + private List leaseApplyInfoList; + + @ApiModelProperty(value = "领料任务汇总") + private LeaseApplyInfo leaseApplyInfo; + + @ApiModelProperty(value = "领料任务物资列表") + private List leaseApplyDetailsList; } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/mapper/TmTaskMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/mapper/TmTaskMapper.java index db137b3e..47fbbee5 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/mapper/TmTaskMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/mapper/TmTaskMapper.java @@ -1,7 +1,11 @@ package com.bonus.material.task.mapper; import java.util.List; + +import com.bonus.material.lease.domain.LeaseApplyDetails; +import com.bonus.material.lease.domain.LeaseApplyInfo; import com.bonus.material.task.domain.TmTask; +import com.bonus.material.task.domain.vo.TmTaskRequestVo; import org.apache.ibatis.annotations.Param; /** @@ -84,4 +88,12 @@ public interface TmTaskMapper { int updateStatusById(@Param("updatedStatus") Integer updatedStatus, @Param("id") String id); int deleteTmTaskByPurchaseIds(Long[] ids); + + List getAuditListByLeaseTmTask(@Param("record") TmTaskRequestVo tmTaskRequestVo); + + List getAuditListByLeaseTmTaskByPeople(@Param("record") TmTaskRequestVo tmTaskRequestVo); + + List getAuditListByLeaseInfo(@Param("record") TmTaskRequestVo record); + + List getLeaseApplyDetails(@Param("record") LeaseApplyInfo record); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/ITmTaskService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/ITmTaskService.java index 347c39ef..53886937 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/ITmTaskService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/ITmTaskService.java @@ -2,6 +2,7 @@ package com.bonus.material.task.service; import java.util.List; import com.bonus.material.task.domain.TmTask; +import com.bonus.material.task.domain.vo.TmTaskRequestVo; /** * 任务Service接口 @@ -57,4 +58,6 @@ public interface ITmTaskService { * @return 结果 */ public int deleteTmTaskByTaskId(Long taskId); + + List getLeaseAuditList(TmTaskRequestVo tmTask); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/impl/TmTaskServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/impl/TmTaskServiceImpl.java index 060d09cb..c9107e48 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/impl/TmTaskServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/task/service/impl/TmTaskServiceImpl.java @@ -1,8 +1,15 @@ package com.bonus.material.task.service.impl; import java.util.List; +import java.util.Set; + +import com.bonus.common.biz.constant.MaterialConstants; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; +import com.bonus.common.security.utils.SecurityUtils; +import com.bonus.material.lease.domain.LeaseApplyDetails; +import com.bonus.material.lease.domain.LeaseApplyInfo; +import com.bonus.material.task.domain.vo.TmTaskRequestVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.bonus.material.task.mapper.TmTaskMapper; @@ -95,4 +102,53 @@ public class TmTaskServiceImpl implements ITmTaskService { public int deleteTmTaskByTaskId(Long taskId) { return tmTaskMapper.deleteTmTaskByTaskId(taskId); } + + /** + * 获取单个申请列表 + */ + @Override + public List getLeaseAuditList(TmTaskRequestVo tmTaskRequestVo) { + Set roles = SecurityUtils.getLoginUser().getRoles(); + List tmTaskList; + if (roles.contains(MaterialConstants.STRING_ADMIN)) { + tmTaskList = tmTaskMapper.getAuditListByLeaseTmTask(tmTaskRequestVo); + } else { + String username = SecurityUtils.getLoginUser().getUsername(); + tmTaskRequestVo.setCreateBy(username); + tmTaskList = tmTaskMapper.getAuditListByLeaseTmTaskByPeople(tmTaskRequestVo); + } + for (TmTaskRequestVo tmTask : tmTaskList) { + int count = 0; + if (tmTask != null) { + // 去查询任务分单表 + List auditListByLeaseInfo = tmTaskMapper.getAuditListByLeaseInfo(tmTask); + if (auditListByLeaseInfo != null && !auditListByLeaseInfo.isEmpty()) { + // 对领料任务集合查询具体详情 + for (LeaseApplyInfo leaseApplyInfo : auditListByLeaseInfo) { + if (leaseApplyInfo != null) { + // 去查询领料任务详情表 + List leaseApplyDetails = tmTaskMapper.getLeaseApplyDetails(leaseApplyInfo); + if (leaseApplyDetails != null && !leaseApplyDetails.isEmpty()) { + for (LeaseApplyDetails leaseApplyDetail : leaseApplyDetails) { + if (leaseApplyDetail != null && leaseApplyDetail.getPreNum() != null) { + // 统计预领数量 + count += leaseApplyDetail.getPreNum(); + } + } + // 塞入领料任务详情的集合中 + leaseApplyInfo.setLeaseApplyDetails(leaseApplyDetails); + } + } + } + // 存入领料任务实体集合 + tmTask.setLeaseApplyInfoList(auditListByLeaseInfo); + tmTask.setRemark(auditListByLeaseInfo.get(0).getRemark()); + } + // 塞入预领的合计数量 + tmTask.setPreCountNum(count); + } + } + + return tmTaskList; + } } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/task/TmTaskMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/task/TmTaskMapper.xml index 6a133034..3dadc1ed 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/task/TmTaskMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/task/TmTaskMapper.xml @@ -128,4 +128,133 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) + + + + + + + + \ No newline at end of file