package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.WrkLastno; import com.zy.asrs.mapper.WrkLastnoMapper; import com.zy.asrs.service.WrkLastnoService; import org.springframework.stereotype.Service; @Service("wrkLastnoService") public class WrkLastnoServiceImpl extends ServiceImpl implements WrkLastnoService { /** * 生成工作号 * * @param type 0:入出库 ; 1:其他 * @return workNo(工作号) */ @Override public int nextWorkNo(Integer type) { WrkLastno wrkLastno = baseMapper.selectById(type); if (Cools.isEmpty(wrkLastno)) { throw new CoolException("数据异常,请联系管理员"); } int workNo = 0; // 入出库类型 workNo = wrkLastno.getWrkNo(); int sNo = wrkLastno.getSNo(); int eNo = wrkLastno.getENo(); workNo = workNo >= eNo ? sNo : workNo + 1; if (workNo > 0) { wrkLastno.setWrkNo(workNo); baseMapper.updateById(wrkLastno); } if (workNo == 0) { throw new CoolException("生成工作号失败,请联系管理员"); } else { if (baseMapper.selectById(workNo) != null) { throw new CoolException("生成工作号" + workNo + "在工作档中已存在"); } } return workNo; } }