From 094a9290c836827bc1f45fd3549e7cd2ea1e1e45 Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期二, 07 十一月 2023 09:45:36 +0800 Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/mdc_430 into develop --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDeviceCalendarServiceImpl.java | 74 +++++++++++++++++++++++++++++-------- 1 files changed, 58 insertions(+), 16 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDeviceCalendarServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDeviceCalendarServiceImpl.java index a469d00..5d3eec2 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDeviceCalendarServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDeviceCalendarServiceImpl.java @@ -2,7 +2,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; @@ -16,16 +15,14 @@ import org.jeecg.modules.mdc.vo.MdcDeviceCalendarQueryVo; import org.jeecg.modules.mdc.vo.MdcDeviceCalendarVo; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import java.time.DayOfWeek; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.time.temporal.ChronoUnit; -import java.util.*; -import java.util.stream.Collectors; -import java.util.stream.Stream; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; /** * @Description: 璁惧宸ヤ綔鏃ュ巻琛� @@ -81,6 +78,7 @@ } @Override + @Transactional(rollbackFor = Exception.class) public boolean saveCalendar(EquipmentCalendarVo calendarVo) { String[] equipmentIdList = calendarVo.getEquipmentId().split(","); List<String> dateList = calendarVo.getDateList(); @@ -89,6 +87,7 @@ for (String equipmentId : equipmentIdList) { for (String date : dateList) { for (MdcShiftSub mdcShiftSub : mdcShiftSubList) { + this.baseMapper.delete(new LambdaQueryWrapper<MdcDeviceCalendar>().eq(MdcDeviceCalendar::getEquipmentId, equipmentId).eq(MdcDeviceCalendar::getEffectiveDate, date)); MdcDeviceCalendar mdcDeviceCalendar = new MdcDeviceCalendar(); mdcDeviceCalendar.setEffectiveDate(date); mdcDeviceCalendar.setEquipmentId(equipmentId); @@ -114,20 +113,21 @@ List<MdcDeviceCalendarVo> result = new ArrayList<>(); try { //鏌ヨ榛樿鐝埗 - List<MdcDeviceCalendarVo> acquiesceShift = this.baseMapper.findAcquiesceShift(); +// List<MdcDeviceCalendarVo> acquiesceShift = this.baseMapper.findAcquiesceShift(); for (String stringDate : stringDates) { List<MdcDeviceCalendarVo> mdcDeviceCalendarVos = this.baseMapper.listByEquipmentAndDate(equipmentId, stringDate); if (mdcDeviceCalendarVos != null && !mdcDeviceCalendarVos.isEmpty()) { result.addAll(mdcDeviceCalendarVos); - } else { - acquiesceShift.forEach(mdcDeviceCalendarVo -> { - mdcDeviceCalendarVo.setEquipmentId(equipmentId); - mdcDeviceCalendarVo.setEffectiveDate(stringDate); - }); - // 璁剧疆榛樿鐝埗 - result.addAll(acquiesceShift); } +// else { +// acquiesceShift.forEach(mdcDeviceCalendarVo -> { +// mdcDeviceCalendarVo.setEquipmentId(equipmentId); +// mdcDeviceCalendarVo.setEffectiveDate(stringDate); +// }); +// // 璁剧疆榛樿鐝埗 +// result.addAll(acquiesceShift); +// } } } catch (Exception e) { e.printStackTrace(); @@ -136,4 +136,46 @@ return result; } + /** + * 璁$畻瀹為檯鐝骇澶╂暟 + * + * @param shiftSubId + * @param equipmentId + * @param validDate + * @return + */ + @Override + public BigDecimal computeActualWorkDayCount(String shiftSubId, String equipmentId, String validDate) { + validDate = validDate.replaceAll("-", ""); + List<String> validDateList = this.baseMapper.computeActualWorkDayCount(shiftSubId, equipmentId, validDate); + return new BigDecimal(validDateList.size()); + } + + /** + * 鏌ヨ鐝鍒嗙被 + * + * @param equipmentId + * @param validDate + * @return + */ + @Override + public List<String> findShiftSort(String equipmentId, String validDate) { + validDate = validDate.replaceAll("-", ""); + return this.baseMapper.findShiftSort(equipmentId, validDate); + } + + /** + * 璁$畻鐝鏃堕棿 + * + * @param shiftSubId + * @param equipmentId + * @param validDate + * @return + */ + @Override + public BigDecimal computeShiftTimeCount(String shiftSubId, String equipmentId, String validDate) { + Integer shiftCount = this.baseMapper.computeShiftTimeCount(shiftSubId, equipmentId, validDate); + return new BigDecimal(shiftCount).multiply(new BigDecimal("8")).multiply(new BigDecimal("60")); + } + } -- Gitblit v1.9.3