package com.example.erp.service.sd; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.example.erp.entity.sd.BasicOtherMoney; import com.example.erp.mapper.sd.BasicOtherMoneyMapper; import org.springframework.stereotype.Service; import java.util.List; @Service @DS("sd") public class BasicOtherMoneyService { private final BasicOtherMoneyMapper basicOtherMoneyMapper; public BasicOtherMoneyService(BasicOtherMoneyMapper basicOtherMoneyMapper) { this.basicOtherMoneyMapper = basicOtherMoneyMapper; } public List findAll() { return basicOtherMoneyMapper.selectList(null); } public int deleteById(Integer id) { return basicOtherMoneyMapper.deleteById(id); } public boolean save(String alias) { //判断是否已经存在 QueryWrapper queryWrapperByName = new QueryWrapper<>(); queryWrapperByName.eq("alias", alias); int count = Math.toIntExact(basicOtherMoneyMapper.selectCount(queryWrapperByName)); if(count>0){ return false; } //查询最大的列名 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.orderByDesc("id"); List basicOtherMoneyList = basicOtherMoneyMapper.selectList(queryWrapper); //超过100条不执行 if(basicOtherMoneyList.size()==100){ return false; } BasicOtherMoney basicOtherMoney = basicOtherMoneyList.get(0); String getColumn = basicOtherMoney.getColumn()==null? "0": String.valueOf(basicOtherMoney.getId()); // basicOtherMoney.getColumn(). // replace("M",""). // replace("S",""); int columnNum = Integer.parseInt(getColumn)+1; BasicOtherMoney newBasicOtherMoney = new BasicOtherMoney(); newBasicOtherMoney.setColumn("M"+String.format("%02d", columnNum)); newBasicOtherMoney.setAlias(alias); basicOtherMoneyMapper.insert(newBasicOtherMoney); return true; } public List findAllByState() { return basicOtherMoneyMapper.selectList( new QueryWrapper(). eq("state",1). like("`column`","S")); } }