From c642e468df7f88cdd33d7b5417dd500ee3850813 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期一, 08 七月 2024 11:05:58 +0800 Subject: [PATCH] 调整标准加工时间和加工数量维护功能 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java | 168 +++++--------------------------------------------------- 1 files changed, 15 insertions(+), 153 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java index 7e950c2..46d57f0 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java @@ -1,178 +1,40 @@ package org.jeecg.modules.mdc.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.apache.commons.lang.StringUtils; -import org.apache.shiro.SecurityUtils; -import org.jeecg.common.system.vo.LoginUser; -import org.jeecg.modules.mdc.entity.MdcEquipment; -import org.jeecg.modules.mdc.entity.MdcNoplanClose; +import org.jeecg.modules.mdc.dto.MdcProcessQuantityDto; import org.jeecg.modules.mdc.entity.MdcStandardProcessDuration; import org.jeecg.modules.mdc.mapper.MdcStandardProcessDurationMapper; -import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.service.IMdcStandardProcessDurationService; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; -import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import org.springframework.web.servlet.ModelAndView; -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import java.util.ArrayList; -import java.util.Collections; +import java.math.BigDecimal; import java.util.List; - /** - * @Description: 鏍囧噯鍔犲伐鏃堕棿琛� + * @Description: 鏍囧噯鍔犲伐鏃堕棿 * @Author: Lius - * @Date: 2023-07-17 + * @Date: 2024-07-08 * @Version: V1.0 */ @Service public class MdcStandardProcessDurationServiceImpl extends ServiceImpl<MdcStandardProcessDurationMapper, MdcStandardProcessDuration> implements IMdcStandardProcessDurationService { - @Resource - private IMdcEquipmentService mdcEquipmentService; - /** - * 鍒嗛〉鏌ヨ + * 鏍规嵁璁惧id璁$畻鏍囧噯鍔犲伐鏃堕棿 * - * @param userId - * @param page - * @param mdcStandardProcessDuration - * @param req + * @param equipmentId + * @param validDate * @return */ @Override - public IPage<MdcStandardProcessDuration> pageList(String userId, Page<MdcStandardProcessDuration> page, MdcStandardProcessDuration mdcStandardProcessDuration, HttpServletRequest req) { - List<String> equipmentIds = new ArrayList<>(); - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getParentId()) && StringUtils.isEmpty(mdcStandardProcessDuration.getEquipmentId())) { - if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { - //閮ㄩ棬灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcStandardProcessDuration.getParentId()); - } else { - //浜х嚎灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcStandardProcessDuration.getParentId()); - } - } else if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { - //鍗曞彴璁惧淇℃伅 - mdcStandardProcessDuration.setMdcSectionIds(Collections.singletonList(mdcStandardProcessDuration.getEquipmentId())); - } else { - //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� - if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { - //閮ㄩ棬灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); - } else { - //浜х嚎灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); - } - } - - if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { - mdcStandardProcessDuration.setMdcSectionIds(equipmentIds); - } - - if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { - return null; - } - return this.baseMapper.pageList(page, mdcStandardProcessDuration); - } - - /** - * 瀵煎嚭 - * - * @param userId - * @param mdcStandardProcessDuration - * @return - */ - @Override - public ModelAndView exportXls(String userId, MdcStandardProcessDuration mdcStandardProcessDuration) { - LambdaQueryWrapper<MdcStandardProcessDuration> queryWrapper = new LambdaQueryWrapper<>(); - List<String> equipmentIds = new ArrayList<>(); - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getParentId()) && StringUtils.isEmpty(mdcStandardProcessDuration.getEquipmentId())) { - if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { - //閮ㄩ棬灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcStandardProcessDuration.getParentId()); - } else { - //浜х嚎灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcStandardProcessDuration.getParentId()); - } - } else if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { - //鍗曞彴璁惧淇℃伅 - mdcStandardProcessDuration.setMdcSectionIds(Collections.singletonList(mdcStandardProcessDuration.getEquipmentId())); - } else { - //鏌ヨ鐢ㄦ埛鎵�鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� - if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { - //閮ㄩ棬灞傜骇 - equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); - } else { - equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); - } - } - if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { - mdcStandardProcessDuration.setMdcSectionIds(equipmentIds); - } - if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { - return null; - } else { - queryWrapper.in(MdcStandardProcessDuration::getEquipmentId, mdcStandardProcessDuration.getMdcSectionIds()); - } - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { - queryWrapper.like(MdcStandardProcessDuration::getEquipmentId, mdcStandardProcessDuration.getEquipmentId()); - } - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentName())) { - queryWrapper.like(MdcStandardProcessDuration::getEquipmentName, mdcStandardProcessDuration.getEquipmentName()); - } - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getPartsCode())) { - queryWrapper.like(MdcStandardProcessDuration::getPartsCode, mdcStandardProcessDuration.getPartsCode()); - } - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getBatchCode())) { - queryWrapper.like(MdcStandardProcessDuration::getBatchCode, mdcStandardProcessDuration.getBatchCode()); - } - if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getSequenceNumber())) { - queryWrapper.like(MdcStandardProcessDuration::getSequenceNumber, mdcStandardProcessDuration.getSequenceNumber()); - } - queryWrapper.orderByAsc(MdcStandardProcessDuration::getEquipmentName); - // Step.2 AutoPoi 瀵煎嚭Excel - ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); - List<MdcStandardProcessDuration> mdcStandardProcessDurations = this.baseMapper.selectList(queryWrapper); - // 瀵煎嚭鏂囦欢鍚嶇О - mv.addObject(NormalExcelConstants.FILE_NAME, "鏍囧噯鍔犲伐鏃堕棿鍒楄〃"); - mv.addObject(NormalExcelConstants.CLASS, MdcStandardProcessDuration.class); - //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛 - //update-begin---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("鏍囧噯鍔犲伐鏃堕棿鍒楄〃鏁版嵁", "瀵煎嚭浜�:" + user.getRealname(), "鏍囧噯鍔犲伐鏃堕棿")); - //update-end---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ - mv.addObject(NormalExcelConstants.DATA_LIST, mdcStandardProcessDurations); - return mv; - } - - /** - * 娣诲姞鏁版嵁 - * - * @param mdcStandardProcessDuration - * @return - */ - @Override - public boolean addData(MdcStandardProcessDuration mdcStandardProcessDuration) { - boolean result = false; - String[] equipmentIds = mdcStandardProcessDuration.getEquipmentIds().split(","); - for (String equipmentId : equipmentIds) { - MdcEquipment mdcEquipment = mdcEquipmentService.findEquipmentNameByEquipmentId(equipmentId); - MdcStandardProcessDuration standardProcessDuration = new MdcStandardProcessDuration(); - BeanUtils.copyProperties(mdcStandardProcessDuration, standardProcessDuration); - standardProcessDuration.setEquipmentId(mdcEquipment.getEquipmentId()); - standardProcessDuration.setEquipmentName(mdcEquipment.getEquipmentName()); - boolean b = super.save(standardProcessDuration); - if (b) { - result = true; + public BigDecimal findByEquipmentId(String equipmentId, String validDate) { + BigDecimal result = BigDecimal.ZERO; + List<MdcProcessQuantityDto> list = this.baseMapper.findByEquipmentId(equipmentId, validDate); + if (list != null && !list.isEmpty()) { + for (MdcProcessQuantityDto mdcProcessQuantityDto : list) { + Integer duration = mdcProcessQuantityDto.getDuration(); + Integer processQuantity = mdcProcessQuantityDto.getProcessQuantity(); + result = result.add(new BigDecimal(duration * processQuantity)); } } return result; -- Gitblit v1.9.3