package com.fzzy.igds.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fzzy.igds.data.IgdsBaseParam; import com.fzzy.igds.domain.InoutLossOver; import com.fzzy.igds.mapper.InoutLossOverMapper; import com.fzzy.igds.utils.ContextUtil; import com.fzzy.igds.utils.DateUtil; import com.ruoyi.common.utils.StringUtils; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.time.DateFormatUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; /** * @Description * @Author CZT * @Date 2025/12/19 09:05 */ @Slf4j @Service public class InoutLossOverService { @Resource private InoutLossOverMapper inoutLossOverMapper; /** * 列表分页查询 * @param page * @param param */ public void pageData(Page page, IgdsBaseParam param) { QueryWrapper queryWrapper = new QueryWrapper<>(); param.setCompanyId(ContextUtil.getCompanyId()); param.setDeptId(ContextUtil.subDeptId(null)); queryWrapper.eq("company_id", param.getCompanyId()); queryWrapper.eq("dept_id", param.getDeptId()); if(StringUtils.isNotBlank(param.getDepotId())){ queryWrapper.like("depot_id", param.getDepotId()); } if(null != param.getStart()){ queryWrapper.ge("loss_time", DateUtil.getCurZero(param.getStart())); } if(null != param.getEnd()){ queryWrapper.le("loss_time", DateUtil.getNextZero(param.getEnd())); } inoutLossOverMapper.selectPage(page, queryWrapper); } /** * 查询库区下所有信息 * @return */ public List listData(String companyId, String deptId) { QueryWrapper queryWrapper = new QueryWrapper<>(); if(StringUtils.isNotBlank(companyId)){ queryWrapper.eq("company_id", companyId); } if(StringUtils.isNotBlank(deptId)){ queryWrapper.eq("dept_id", deptId); } queryWrapper.orderByDesc("id"); return inoutLossOverMapper.selectList(queryWrapper); } /** * 保存数据 * @param data */ public void saveData(InoutLossOver data) { if (StringUtils.isEmpty(data.getCompanyId())) { data.setCompanyId(ContextUtil.getCompanyId()); } if (StringUtils.isEmpty(data.getDeptId())) { data.setDeptId(ContextUtil.subDeptId(null)); } data.setUpdateBy(ContextUtil.getLoginUserName()); data.setUpdateTime(new Date()); if(StringUtils.isEmpty(data.getId())){ data.setId(getStrId(data.getLossTime())); data.setCreateBy(ContextUtil.getLoginUserName()); data.setCreateTime(new Date()); inoutLossOverMapper.insert(data); }else { inoutLossOverMapper.updateById(data); } } /** * 获取主键ID * * @param time */ public String getStrId(Date time) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.ge("loss_time", DateUtil.getCurZero(time)); queryWrapper.le("loss_time", DateUtil.getNextZero(time)); queryWrapper.orderByDesc("id"); List list = inoutLossOverMapper.selectList(queryWrapper); String oldOrderId = null; if (null != list && list.size() > 0) { oldOrderId = list.get(0).getId().substring(8); } return DateFormatUtils.format(time, "yyyyMMdd") + ContextUtil.getOrderId(oldOrderId, 3); } /** * 删除数据 * @param data * @return */ public String delData(InoutLossOver data) { inoutLossOverMapper.deleteById(data); return null; } }