package com.yiboshi.science.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.yiboshi.science.base.BaseServiceImpl; import com.yiboshi.science.dao.ComProjectMembersDAO; import com.yiboshi.science.entity.ComProjectMembers; import com.yiboshi.science.param.dto.ComProjectMembersDTO; import com.yiboshi.science.param.query.ComProjectMembersQueryVO; import com.yiboshi.science.service.ComProjectMembersService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import java.util.Objects; import static com.yiboshi.science.utils.StringUtil.hideAllIdCardNum; /** * 项目组成员表 Service 实现类 * * @author lkl * @version 2021-08-26 */ @Service public class ComProjectMembersServiceImpl extends BaseServiceImpl<ComProjectMembersDAO, ComProjectMembersQueryVO, ComProjectMembersDTO, ComProjectMembers> implements ComProjectMembersService { @Autowired private ComProjectMembersDAO comProjectMembersDAO; @Override protected void setCriteriaForQuery(ComProjectMembersQueryVO vo, QueryWrapper<ComProjectMembersQueryVO> criteria) { if (Objects.nonNull(vo.getObjectId())) { criteria.eq("object_id", vo.getObjectId()); } if (Objects.nonNull(vo.getName())) { criteria.eq("name", vo.getName()); } if (Objects.nonNull(vo.getBirthday())) { criteria.eq("birthday", vo.getBirthday()); } if (Objects.nonNull(vo.getDegree())) { criteria.eq("degree", vo.getDegree()); } if (Objects.nonNull(vo.getTitle())) { criteria.eq("title", vo.getTitle()); } if (Objects.nonNull(vo.getResearchDirection())) { criteria.eq("research_direction", vo.getResearchDirection()); } if (Objects.nonNull(vo.getWorkUnit())) { criteria.eq("work_unit", vo.getWorkUnit()); } if (Objects.nonNull(vo.getProjWork())) { criteria.eq("proj_work", vo.getProjWork()); } if (Objects.nonNull(vo.getForMonths())) { criteria.eq("for_months", vo.getForMonths()); } if (Objects.nonNull(vo.getShowIndex())) { criteria.eq("show_index", vo.getShowIndex()); } if (Objects.nonNull(vo.getRole())) { criteria.eq("role", vo.getRole()); } } @Override public List<ComProjectMembersDTO> getListByObjectId(String objectId) { List<ComProjectMembersDTO> list = comProjectMembersDAO.getListByObjectId(objectId); // if (null != list && list.size() > 0) // list.forEach((e) -> { // e.setCertId(hideAllIdCardNum(e.getCertId())); // }); return list; } @Override public void insertList(List<ComProjectMembersDTO> list, String objectId) { ComProjectMembers model = new ComProjectMembers(); model.setObjectId(objectId); this.delete(model); // if (!isObjectNull(membersList.get(i))) if (null != list) { List<ComProjectMembers> iList = new ArrayList<>(); for (int i = 0; i < list.size(); i++) { ComProjectMembers item = convert2Entity(list.get(i)); if (i == 0) item.setRole(1); else item.setRole(2); item.setShowIndex(i + 1); item.setObjectId(objectId); iList.add(item); } this.insertBatch(iList); } } @Override public void deleteByObjectId(String objectId) { ComProjectMembers e = new ComProjectMembers(); e.setObjectId(objectId); this.delete(e); } @Override public ComProjectMembersDTO getMemCountById(String objectId) { ComProjectMembersDTO member = comProjectMembersDAO.getMemCountById(objectId); member.setWorkCount(comProjectMembersDAO.getMemWorkCountByObjectId(objectId)); return member; } }