package com.ghsc.partybuild.service.impl.jcdzzpb; import com.ghsc.partybuild.mapper.ZzAssesConfirmCQuery; import com.ghsc.partybuild.mapper.ZzAssesConfirmMapper; import com.ghsc.partybuild.mapper.ZzAssesItemScoreMapper; import com.ghsc.partybuild.model.ZzAssesConfirm; import com.ghsc.partybuild.model.ZzAssesConfirmExample; import com.ghsc.partybuild.model.ZzAssesItemScore; import com.ghsc.partybuild.model.ZzAssesItemScoreExample; import com.ghsc.partybuild.service.ZzAssesConfirmService; import com.ghsc.partybuild.util.NumberUtils; import com.ghsc.partybuild.util.StringUtils; import com.ghsc.partybuild.vo.jcdzzpb.ZzAssesConfirmVo; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; import java.util.UUID; @Service("ZzAssesConfirmService") public class ZzAssesConfirmServiceImpl implements ZzAssesConfirmService { @Autowired private ZzAssesConfirmCQuery zzAssesConfirmCQuery; @Autowired private ZzAssesConfirmMapper zzAssesConfirmMapper; @Autowired private ZzAssesItemScoreMapper zzAssesItemScoreMapper; @Autowired private StringUtils stringUtils; @Autowired private NumberUtils numberUtils; @Override public PageInfo getList(int pageIndex, int pageSize, String id, String dzzdm, String year){ PageHelper.startPage(pageIndex, pageSize); List list = zzAssesConfirmCQuery.selectZzAssesConfirmList(id, dzzdm, year); PageInfo result = new PageInfo(list); return result; } @Override public ZzAssesConfirmVo getById(String id) { if (stringUtils.IsNullOrEmpty(id)) return null; ZzAssesConfirmVo data = zzAssesConfirmCQuery.selectZzAssesConfirmList(id, null, null).stream().findFirst().orElse(null); if(data != null){ data.setItemScoreList(zzAssesConfirmCQuery.findZzAssesItemScoreList(data.getId())); } return data; } @Override public int save(ZzAssesConfirmVo data, String userId) { int result = 0; ZzAssesConfirm dbModel = zzAssesConfirmMapper.selectByPrimaryKey(data.getId()); if (dbModel == null) { dbModel = new ZzAssesConfirm(); dbModel.setId(data.getId()); dbModel.setAssesTemplateId(data.getAssesTemplateId()); dbModel.setYear(data.getYear()); dbModel.setDzzdm(data.getDzzdm()); dbModel.setCreateTime(new Date()); dbModel.setCreateUserid(userId); dbModel.setUpdateTime(new Date()); dbModel.setUpdateUserid(userId); result = zzAssesConfirmMapper.insert(dbModel); } else { dbModel.setAssesTemplateId(data.getAssesTemplateId()); dbModel.setYear(data.getYear()); dbModel.setDzzdm(data.getDzzdm()); dbModel.setUpdateTime(new Date()); dbModel.setUpdateUserid(userId); result = zzAssesConfirmMapper.updateByPrimaryKey(dbModel); } ZzAssesItemScoreExample emp = new ZzAssesItemScoreExample(); emp.or().andAssesConfirmIdEqualTo(data.getId()); zzAssesItemScoreMapper.deleteByExample(emp); if(data.getItemScoreList().size() > 0){ data.getItemScoreList().forEach(item -> { ZzAssesItemScore scoreModel = new ZzAssesItemScore(); scoreModel.setId(UUID.randomUUID().toString()); scoreModel.setAssesConfirmId(data.getId()); scoreModel.setAssesTemplateItemId(item.getAssesTemplateItemId()); scoreModel.setScore(numberUtils.convertIntegerIsNullToZero(item.getScore())); scoreModel.setCreateTime(new Date()); scoreModel.setCreateUserid(userId); zzAssesItemScoreMapper.insert(scoreModel); }); } return result; } @Override public int delete(List idList) { ZzAssesConfirmExample exp = new ZzAssesConfirmExample(); exp.or().andIdIn(idList); ZzAssesItemScoreExample emp = new ZzAssesItemScoreExample(); emp.or().andAssesConfirmIdIn(idList); zzAssesItemScoreMapper.deleteByExample(emp); return zzAssesConfirmMapper.deleteByExample(exp); } }