package com.yuanchu.limslaboratory.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yuanchu.limslaboratory.mapper.InspectionMaterialListMapper;
import com.yuanchu.limslaboratory.mapper.InspectionProductListMapper;
import com.yuanchu.limslaboratory.pojo.InspectionMaterialList;
import com.yuanchu.limslaboratory.pojo.InspectionProductList;
import com.yuanchu.limslaboratory.pojo.Plan;
import com.yuanchu.limslaboratory.mapper.PlanMapper;
import com.yuanchu.limslaboratory.pojo.dto.PlanDto;
import com.yuanchu.limslaboratory.service.PlanService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
*
* 服务实现类
*
*
* @author 江苏鵷雏网络科技有限公司
* @since 2023-07-17
*/
@Service
public class PlanServiceImpl extends ServiceImpl implements PlanService {
@Resource
PlanMapper planMapper;
@Resource
InspectionProductListMapper inspectionProductListMapper;
//查询所有检验计划分配
@Override
public Map selectAllPlan(int pageSize, int countSize, Integer state) {
if (state == null) {
state = 2;
}
return planMapper.selectAllPlan((pageSize - 1) * countSize, pageSize * countSize, state);
}
//作废检验计划
@Override
public boolean delPlan(Integer id) {
Plan plan = planMapper.selectById(id);
//状态改为作废0
plan.setState(0);
int judge = planMapper.updateById(plan);
return judge > 0;
}
//根据样品id查询检验计划里面的检验项目
@Override
public List selectProductById(Integer id) {
return inspectionProductListMapper.selectByMaterId(id);
}
//修改检验计划里分配计划的信息
@Override
public void upPlan(InspectionProductList inspectionProductList) {
LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(InspectionProductList::getInspectionMaterialListId, inspectionProductList.getInspectionMaterialListId())
.eq(InspectionProductList::getMethod, inspectionProductList.getMethod());
inspectionProductListMapper.update(inspectionProductList, updateWrapper);
}
//查询成品检验
@Override
public List selectInspection(int pageSize, int countSize, Integer state) {
return planMapper.selectInspection((pageSize - 1) * countSize, pageSize * countSize, state);
}
}