package com.huimv.admin.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.huimv.admin.common.utils.Result;
import com.huimv.admin.common.utils.ResultCode;
import com.huimv.admin.entity.BreedTupping;
import com.huimv.admin.entity.BreedVaccinationPlan;
import com.huimv.admin.entity.BreedVaccinationRecord;
import com.huimv.admin.mapper.BreedVaccinationPlanMapper;
import com.huimv.admin.mapper.BreedVaccinationRecordMapper;
import com.huimv.admin.service.IBreedVaccinationPlanService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Map;
/**
*
* 个体羊只防疫计划 服务实现类
*
*
* @author author
* @since 2024-08-19
*/
@Service
public class BreedVaccinationPlanServiceImpl extends ServiceImpl implements IBreedVaccinationPlanService {
@Autowired
private BreedVaccinationPlanMapper planMapper;
@Autowired
private BreedVaccinationRecordMapper recordMapper;
@Override
public Result listPage(Map paramsMap) {
String farmId = paramsMap.get("farmId");
String pageNum = paramsMap.get("pageNum");
String pageSize = paramsMap.get("pageSize");
String sheepId = paramsMap.get("sheepId");
String batchNum = paramsMap.get("batchNum");
String isBatch = paramsMap.get("isBatch");
if ("".equals(pageNum) || null == pageNum) {
pageNum = "1";
pageSize = "20";
}
Page page = new Page(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("farm_id", farmId).eq("is_batch", isBatch)
.like(StringUtils.isNotBlank(sheepId), "sheep_id", sheepId)
.like(StringUtils.isNotBlank(batchNum), "batch_num", batchNum);
return new Result(ResultCode.SUCCESS, planMapper.selectPage(page, queryWrapper));
}
@Override
public Result add(BreedVaccinationPlan vaccinationPlan) {
BreedVaccinationRecord record = new BreedVaccinationRecord();
record.setCreateTime(vaccinationPlan.getPerformTime());
record.setMedicine(vaccinationPlan.getMedicine());
record.setMethod(vaccinationPlan.getMethod());
record.setRegisterUser(vaccinationPlan.getRegisterUser());
record.setRemark(vaccinationPlan.getRemark());
record.setFarmId(vaccinationPlan.getFarmId());
if (vaccinationPlan.getIsBatch() == 1) {
vaccinationPlan.setNumber(1);
record.setNumber(1);
record.setIsBatch(1);
} else {
record.setNumber(vaccinationPlan.getNumber());
record.setIsBatch(0);
}
recordMapper.insert(record);
return new Result(ResultCode.SUCCESS, planMapper.insert(vaccinationPlan));
}
@Override
public Result edit(BreedVaccinationPlan vaccinationPlan) {
return new Result(ResultCode.SUCCESS, planMapper.updateById(vaccinationPlan));
}
@Override
public Result remove(Map paramsMap) {
String ids = paramsMap.get("ids");
String[] split = ids.split(",");
for (String s : split) {
planMapper.deleteById(s);
}
return new Result(ResultCode.SUCCESS);
}
}