package org.jeecg.modules.mdc.service.impl; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.gson.JsonObject; import org.apache.commons.lang.StringUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.modules.mdc.entity.MdcShift; import org.jeecg.modules.mdc.entity.MdcShiftSub; import org.jeecg.modules.mdc.mapper.MdcShiftSubMapper; import org.jeecg.modules.mdc.service.IMdcShiftSubService; import org.jeecg.modules.mdc.util.DateUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; /** * @Description: 班次表(次表) * @Author: Sake * @Date: 2023-04-03 16:54 */ @Service public class MdcShiftSubServiceImpl extends ServiceImpl implements IMdcShiftSubService { @Override public Boolean selectMdcShiftSub(String id) { List mdcShiftList = this.list(new LambdaQueryWrapper() .eq(MdcShiftSub::getShiftId, id)); //子表有数据则返回true if (mdcShiftList == null || mdcShiftList.isEmpty()) { return true; } return false; } @Override public IPage queryPageList(String shiftId, Page page) { LambdaQueryWrapper wrapper =new LambdaQueryWrapper<>(); wrapper.eq(MdcShiftSub::getShiftId,shiftId); return baseMapper.selectPage(page,wrapper); } @Override public MdcShiftSub addMdcShiftSub(MdcShiftSub mdcShiftSub) { this.save(mdcShiftSub); return mdcShiftSub; } @Override public Boolean editMdcShiftSub(MdcShiftSub mdcShiftSub) { return this.updateById(mdcShiftSub); } @Override public Boolean updateSubStatusById(JSONObject jsonObject) { String id = jsonObject.getString("id"); String status = jsonObject.getString("status"); MdcShiftSub mdcShiftSub = this.getById(id); mdcShiftSub.setShiftSubStatus(status); return this.updateById(mdcShiftSub); } @Override public Result deleteMdcShiftSub(String id) { //TODO 删除前判断设备日历表是否没有引用当前数据 Boolean flag = true; if (flag){ boolean flags = this.removeById(id); return flags ? Result.OK("删除成功") : Result.error("没有此数据"); } return Result.error("当前日期已被设备日历引用无法删除"); } @Override public List> initShiftSubList(String shiftId) { List mdcShiftSubs = this.baseMapper.selectList(new LambdaQueryWrapper().eq(MdcShiftSub::getShiftSubStatus, "1").eq(MdcShiftSub::getShiftId, shiftId)); List> result = new ArrayList<>(); for (MdcShiftSub mdcShiftSub : mdcShiftSubs) { Map map = new HashMap<>(); map.put("label", mdcShiftSub.getShiftSubName()); map.put("value", mdcShiftSub.getId()); result.add(map); } return result; } }