package com.fzzy.igds.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.fzzy.igds.constant.Constant; import com.fzzy.igds.domain.FoodPrice; import com.fzzy.igds.mapper.FoodPriceMapper; import com.fzzy.igds.timer.JobWarnService; import com.fzzy.igds.utils.ContextUtil; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.StringUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; /** * @Description * @Author CZT * @Date 2026/01/22 09:04 */ @Slf4j @Service public class FoodPriceService { @Resource private FoodPriceMapper foodPriceMapper; @Resource private JobWarnService jobWarnService; /** * * @return */ public List listData() { SysUser user = ContextUtil.getLoginUser(); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("company_id", user.getCompanyId()); //银行用户查询当前银行的单价配置 if (Constant.USER_TYPE_30.equals(user.getUserType())) { queryWrapper.likeRight("bank_id", user.getUserData()); } return foodPriceMapper.selectList(queryWrapper); } /** * 根据银行及品种,查询单价信息 * @param bankId * @param foodVariety * @return */ public FoodPrice getDataByBankAndFood(String bankId, String foodVariety) { SysUser user = ContextUtil.getLoginUser(); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("bank_id", bankId); queryWrapper.eq("food_variety", foodVariety); List foodPrices = foodPriceMapper.selectList(queryWrapper); if(null == foodPrices){ return null; } return foodPrices.get(0); } /** * 更新或保存信息 * @param data * @return */ public void saveData(FoodPrice data) { if(StringUtils.isBlank(data.getCompanyId())){ data.setCompanyId(ContextUtil.getCompanyId()); } data.setUpdateBy(ContextUtil.getLoginUserName()); data.setUpdateTime(new Date()); if(StringUtils.isBlank(data.getId())){ data.setId(ContextUtil.generateId()); data.setCreateBy(ContextUtil.getLoginUserName()); data.setCreateTime(new Date()); foodPriceMapper.insert( data); }else { foodPriceMapper.updateById( data); //更新时,执行还款提醒重新判断 log.info("---------粮食单价更新时,执行还款提醒重新判断单价id{}---------",data.getId()); jobWarnService.doExe(data.getBankId()); } } /** * 删除信息 * @param data * @return */ public void delData(FoodPrice data) { foodPriceMapper.deleteById(data); } }