diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/BaseReturnOrderDetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/BaseReturnOrderDetailController.java index c6ed3fde..ec6cbd43 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/BaseReturnOrderDetailController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/BaseReturnOrderDetailController.java @@ -44,7 +44,6 @@ public class BaseReturnOrderDetailController extends BaseController /** * 查询员工退料详情列表 */ - @RequiresPermissions("system:detail:list") @PostMapping("/list") @ResponseBody public TableDataInfo list(BaseReturnOrderDetail baseReturnOrderDetail) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/BaseReturnOrderVO.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/BaseReturnOrderVO.java new file mode 100644 index 00000000..1f973365 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/BaseReturnOrderVO.java @@ -0,0 +1,35 @@ +package com.ruoyi.system.domain.Vo; + +import com.ruoyi.system.domain.BaseReturnOrder; +import lombok.Data; + +import java.util.Date; + +@Data +public class BaseReturnOrderVO extends BaseReturnOrder { + + private static final long serialVersionUID = 1L; + /** 申请人姓名 */ + private String applyUserName; + /** 任务ID */ + private String taskId; + /** 任务名称 */ + private String taskName; + /** 任务状态 */ + private String taskStatus; + /** 办理时间 */ + private Date doneTime; + /** 创建人 */ + private String createUserName; + /** 流程实例状态 1 激活 2 挂起 */ + private String suspendState; + /** 待办用户id */ + private String todoUserId; + /** 流程实例类型名称 */ + private String instanceTypeName; + + /** + * 关键词 + */ + private String keyword; +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/BaseReturnOrderDetailServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/BaseReturnOrderDetailServiceImpl.java index e49845c5..533eb098 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/BaseReturnOrderDetailServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/BaseReturnOrderDetailServiceImpl.java @@ -8,14 +8,14 @@ import com.ruoyi.common.exception.BusinessException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.ShiroUtils; import com.ruoyi.common.utils.StringUtils; -import com.ruoyi.system.domain.OutsourceRequisition; -import com.ruoyi.system.domain.OutsourceRequisitionDetail; +import com.ruoyi.system.domain.*; +import com.ruoyi.system.mapper.BaseEmpRequisiteOrderChildMapper; +import com.ruoyi.system.mapper.BaseEmpRequisiteOrderMapper; import com.ruoyi.system.mapper.OutsourceRequisitionMapper; import org.apache.poi.util.StringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.system.mapper.BaseReturnOrderDetailMapper; -import com.ruoyi.system.domain.BaseReturnOrderDetail; import com.ruoyi.system.service.IBaseReturnOrderDetailService; import com.ruoyi.common.core.text.Convert; import org.springframework.transaction.annotation.Transactional; @@ -35,6 +35,12 @@ public class BaseReturnOrderDetailServiceImpl implements IBaseReturnOrderDetailS @Autowired private OutsourceRequisitionMapper outRequisitionMapper; + @Autowired + private BaseEmpRequisiteOrderMapper empRequisiteOrderMapper; + + @Autowired + private BaseEmpRequisiteOrderChildMapper empRequisiteOrderChildMapper; + /** * 查询员工退料详情 * @@ -159,9 +165,22 @@ public class BaseReturnOrderDetailServiceImpl implements IBaseReturnOrderDetailS } } }else if(pickNo.startsWith("YGLL")){ + BaseEmpRequisiteOrder empRequisiteOrder = empRequisiteOrderMapper.selectBaseEmpRequisiteOrderByCode(pickNo); + if(empRequisiteOrder == null){ + throw new BusinessException("关联员工领料单不存在,请检查"); + } + BaseEmpRequisiteOrderChild child = new BaseEmpRequisiteOrderChild(); + child.setQuoteId(pickNo);//领料单号 + List details = empRequisiteOrderChildMapper.selectBaseEmpRequisiteOrderChildList(child); + if(StringUtils.isNotEmpty(details)){ + for (BaseEmpRequisiteOrderChild detail: details) { + BaseReturnOrderDetail returnOrderDetail = createReturnOrderDetailByEmpDetail(detail); + returnOrderDetails.add(returnOrderDetail); + } + } }else{ - throw new BusinessException("领料号不存在"); + throw new BusinessException("领料单号不存在"); } return returnOrderDetails; } @@ -194,4 +213,35 @@ public class BaseReturnOrderDetailServiceImpl implements IBaseReturnOrderDetailS } return returnOrderDetail; } + + /** 根据员工领料详情生成退料详情*/ + public BaseReturnOrderDetail createReturnOrderDetailByEmpDetail(BaseEmpRequisiteOrderChild detail){ + BaseReturnOrderDetail returnOrderDetail = new BaseReturnOrderDetail(); + returnOrderDetail.setMaterialNo(detail.getMaterialCode()); + returnOrderDetail.setMaterialName(detail.getMaterialName()); + returnOrderDetail.setPhotoUrl(detail.getPhotoUrl()); + returnOrderDetail.setProcessMethod(detail.getProcessMethod()); + returnOrderDetail.setBrand(detail.getBrand()); + returnOrderDetail.setUnit(detail.getUnit()); + returnOrderDetail.setDescribe(detail.getDescribe()); + returnOrderDetail.setMaterialModel(detail.getMaterialModel()); + returnOrderDetail.setHasPickNum(detail.getMaterialNum()); + returnOrderDetail.setReturnNum(0); + + BaseReturnOrderDetail tempDetail = new BaseReturnOrderDetail(); + tempDetail.setPickNo(detail.getQuoteId()); + tempDetail.setMaterialNo(detail.getMaterialCode()); + List returnList = baseReturnOrderDetailMapper.selectBaseReturnOrderDetailList(tempDetail); + List filtList = returnList.stream() + .filter(item ->item.getAuditStatus().equals("0") + ||item.getAuditStatus().equals("1")).collect(Collectors.toList()); + + if(StringUtils.isEmpty(filtList)){ + returnOrderDetail.setHasReturnNum(0); + }else{ + int hasReturnNum = filtList.stream().mapToInt(item ->item.getReturnNum()).sum(); + returnOrderDetail.setHasReturnNum(hasReturnNum); + } + return returnOrderDetail; + } }