package com.yuanchu.mom.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.common.PrintChina; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.mapper.DataReportingMapper; import com.yuanchu.mom.pojo.DataReporting; import com.yuanchu.mom.pojo.FansSubmit; import com.yuanchu.mom.pojo.FinanceSubmit; import com.yuanchu.mom.service.FinanceSubmitService; import com.yuanchu.mom.mapper.FinanceSubmitMapper; import com.yuanchu.mom.utils.QueryWrappers; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.Map; /** * @author Administrator * @description 针对表【finance_submit】的数据库操作Service实现 * @createDate 2023-12-25 01:48:05 */ @Service @AllArgsConstructor public class FinanceSubmitServiceImpl extends ServiceImpl implements FinanceSubmitService{ private FinanceSubmitMapper financeSubmitMapper; private GetLook getLook; private DataReportingMapper dataReportingMapper; @Override public Map selectFinanceSubmitList(IPage page, FinanceSubmit financeSubmit) { Map map = new HashMap<>(); map.put("head", PrintChina.printChina(FinanceSubmit.class)); Map map1 = getLook.selectPowerByMethodAndUserId("selectFinanceSubmitList"); if(map1.get("look")==1) financeSubmit.setCreateUser(map1.get("userId")); map.put("body", financeSubmitMapper.selectFinanceSubmitPageList(page, QueryWrappers.queryWrappers(financeSubmit))); return map; } @Override public int delFinanceSubmit(Integer id) { return financeSubmitMapper.deleteById(id); } @Override public int updateFinanceSubmit(FinanceSubmit financeSubmit) { return financeSubmitMapper.updateById(financeSubmit); } @Override public int addFinanceSubmit(FinanceSubmit financeSubmit, String date) { if(date == null) date = getYesterday(); DataReporting dataReporting = dataReportingMapper.selectOne(Wrappers.lambdaQuery().eq(DataReporting::getAgent, financeSubmit.getCompany()).eq(DataReporting::getName, financeSubmit.getName()).like(DataReporting::getCreateTime, date)); if(ObjectUtil.isEmpty(dataReporting)){ throw new ErrorException(date+" 账户:"+financeSubmit.getName()+" 的代理商:"+financeSubmit.getCompany()+" 并未上报过"); } dataReporting.setAgentRebate(financeSubmit.getEmployeeRebate()); dataReportingMapper.updateById(dataReporting); financeSubmit.setDataId(dataReporting.getId()); return financeSubmitMapper.insert(financeSubmit); } public String getYesterday(){ return LocalDate.now().minusDays(1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); } }