package org.jeecg.modules.mdc.service.impl; 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.lang3.StringUtils; import org.jeecg.modules.mdc.entity.MdcVacationManagement; import org.jeecg.modules.mdc.mapper.MdcVacationManagementMappper; import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.service.IMdcVacationManagementService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; /** * @Description: 假期管理 * @Author: ym * @Date: 2023-07-05 */ @Service public class MdcVacationManagementServiceImpl extends ServiceImpl implements IMdcVacationManagementService { @Autowired private IMdcEquipmentService equipmentService; @Override public MdcVacationManagement queryById(String id) { return this.getById(id); } @Override public Boolean addVacation(MdcVacationManagement mdcVacationManagement) { return this.save(mdcVacationManagement); } @Override public Boolean editVacation(MdcVacationManagement mdcVacationManagement) { return this.updateById(mdcVacationManagement); } @Override public Boolean deleteVacation(String id) { return this.removeById(id); } @Override public Boolean deleteBatchVacation(String ids) { return this.removeBatchByIds(Arrays.asList(ids.split(","))); } @Override public IPage pageList(String userId, Page page, HttpServletRequest req, MdcVacationManagement mdcVacationManagement) { //显示双休日 Date vacationDate=mdcVacationManagement.getVacationDate(); String type= mdcVacationManagement.getType(); Calendar c=Calendar.getInstance(); c.setTime(vacationDate); int day=c.get(Calendar.DAY_OF_WEEK)-1; System.out.println(day); if (day==6||day==7){ System.out.println("双休日"); mdcVacationManagement.setType("双休日"); } //查询用户所拥有的设备信息 List equipmentIds=new ArrayList<>(); if (StringUtils.isNotEmpty(mdcVacationManagement.getParentId()) && StringUtils.isEmpty(mdcVacationManagement.getEquipmentId())){ if ("2".equals(mdcVacationManagement.getTypeTree())){ //部门层级 equipmentIds=equipmentService.getEquipmentIdsByDepart(userId,mdcVacationManagement.getParentId()); }else { //产线层级 equipmentIds=equipmentService.getEquipmentIdsProduction(userId,mdcVacationManagement.getParentId()); } }else if (StringUtils.isNotEmpty(mdcVacationManagement.getEquipmentId())){ //单台设备信息 mdcVacationManagement.setMdcSectionIds(Collections.singletonList(mdcVacationManagement.getEquipmentId())); }else { //查询用户所拥有的设备信息 if ("2".equals(mdcVacationManagement.getTypeTree())){ //部门层级 equipmentIds=equipmentService.getEquipmentIdsByDepart(userId,null); }else { equipmentIds=equipmentService.getEquipmentIdsProduction(userId,null); } } if (mdcVacationManagement.getMdcSectionIds() == null || mdcVacationManagement.getMdcSectionIds().isEmpty()){ mdcVacationManagement.setMdcSectionIds(equipmentIds); } if (mdcVacationManagement.getMdcSectionIds() == null || mdcVacationManagement.getMdcSectionIds().isEmpty()){ return null; } return this.baseMapper.pageList(page,mdcVacationManagement); } }