教育训练处考试制证系统后端
heheng
2025-01-26 9481869e7c7af0db99a9f3df119c4812f5cdbdae
exam-system/src/main/java/com/gkhy/exam/noncoalmine/service/impl/ExamSiteServiceImpl.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gkhy.exam.noncoalmine.entity.ExamSite;
import com.gkhy.exam.noncoalmine.entity.TrainingInstitution;
import com.gkhy.exam.noncoalmine.mapper.ExamSiteMapper;
import com.gkhy.exam.noncoalmine.mapper.TrainingInstitutionMapper;
import com.gkhy.exam.noncoalmine.model.addForm.ExamSiteAddForm;
@@ -20,6 +19,7 @@
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@@ -31,75 +31,78 @@
 */
@Service("examSiteService")
public class ExamSiteServiceImpl extends ServiceImpl<ExamSiteMapper, ExamSite> implements ExamSiteService {
   @Autowired
   private SysDistrictService districtService;
   @Autowired
   private ExamSiteMapper examSiteMapper;
   @Autowired
   private TrainingInstitutionMapper institutionMapper;
   @Override
   public List<ExamSiteVO> listByPage(ExamSiteQuery query) {
      SysUser user = SecurityUtils.getLoginUser().getUser();
      if(StringUtils.isEmpty(query.getDistrictCode())){
         //传入区划为空
         if(!user.isAdmin(user.getUserId())){
            //非超管
            List<SysDistrict> districtList = districtService
                  .selectAll()
                  .stream()
                  .filter(sysDistrict -> sysDistrict.getId().equals(user.getDistrictId()))
                  .collect(Collectors.toList());
            if(districtList.size() > 0){
               SysDistrict sysDistrict = districtList.get(0);
               query.setDistrictCode(sysDistrict.getCode());
            }
         }
      }
      List<ExamSiteVO> trainingInstitutionVOS = examSiteMapper.listByPage(query);
      trainingInstitutionVOS.forEach(item->{
         TrainingInstitution trainingInstitution = institutionMapper.selectById(item.getInstitutionId());
         item.setInstitutionName(trainingInstitution != null ? trainingInstitution.getInstitutionName() : "");
      });
      return trainingInstitutionVOS;
   }
    @Autowired
    private SysDistrictService districtService;
    @Autowired
    private ExamSiteMapper examSiteMapper;
    @Autowired
    private TrainingInstitutionMapper institutionMapper;
   /**
    * 新增
    * @param addForm
    * @return
    */
   @Override
   public int add(ExamSiteAddForm addForm) {
      ExamSite examSite = new ExamSite();
      BeanUtils.copyProperties(addForm,examSite);
      examSite.setDelFlag((byte)0);
      return baseMapper.insert(examSite);
   }
    @Override
    public List<ExamSiteVO> listByPage(ExamSiteQuery query) {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        if (StringUtils.isEmpty(query.getDistrictCode())) {
            //传入区划为空
            if (!user.isAdmin(user.getUserId())) {
                //非超管
                List<SysDistrict> districtList = districtService
                        .selectAll()
                        .stream()
                        .filter(sysDistrict -> sysDistrict.getId().equals(user.getDistrictId()))
                        .collect(Collectors.toList());
                if (districtList.size() > 0) {
                    SysDistrict sysDistrict = districtList.get(0);
                    query.setDistrictCode(sysDistrict.getCode());
                }
            }
        }
        List<ExamSiteVO> trainingInstitutionVOS = examSiteMapper.listByPage(query);
//      trainingInstitutionVOS.forEach(item->{
//         TrainingInstitution trainingInstitution = institutionMapper.selectById(item.getInstitutionId());
//         item.setInstitutionName(trainingInstitution != null ? trainingInstitution.getInstitutionName() : "");
//      });
        return trainingInstitutionVOS;
    }
   /**
    * 修改
    * @param modForm
    * @return
    */
   @Override
   public int mod(ExamSiteModForm modForm) {
      ExamSite examSite = new ExamSite();
      BeanUtils.copyProperties(modForm,examSite);
      return baseMapper.updateById(examSite);
   }
    /**
     * 新增
     *
     * @param addForm
     * @return
     */
    @Override
    public int add(ExamSiteAddForm addForm) {
        ExamSite examSite = new ExamSite();
        BeanUtils.copyProperties(addForm, examSite);
        examSite.setDelFlag((byte) 0);
        return baseMapper.insert(examSite);
    }
   @Override
   public void delBatch(List<Long> siteIds) {
      UpdateWrapper<ExamSite> updateWrapper = new UpdateWrapper<>();
      updateWrapper.in("site_id",siteIds)
            .set("del_flag",(byte)2);
      this.update(updateWrapper);
   }
    /**
     * 修改
     *
     * @param modForm
     * @return
     */
    @Override
    public int mod(ExamSiteModForm modForm) {
        ExamSite examSite = new ExamSite();
        BeanUtils.copyProperties(modForm, examSite);
        return baseMapper.updateById(examSite);
    }
   @Override
   public List<ExamSite> getSiteByInstitutionId(Long institutionId) {
      List<ExamSite> examSites = baseMapper.selectList(new LambdaQueryWrapper<ExamSite>().eq(ExamSite::getDelFlag, (byte) 0).eq(ExamSite::getInstitutionId, institutionId));
      return examSites;
   }
    @Override
    public void delBatch(List<Long> siteIds) {
        UpdateWrapper<ExamSite> updateWrapper = new UpdateWrapper<>();
        updateWrapper.in("site_id", siteIds)
                .set("del_flag", (byte) 2);
        this.update(updateWrapper);
    }
    @Override
    public List<ExamSite> getSiteByInstitutionId(Long institutionId) {
        List<ExamSite> examSites = baseMapper.selectList(new LambdaQueryWrapper<ExamSite>().eq(ExamSite::getDelFlag, (byte) 0).eq(ExamSite::getInstitutionId, institutionId));
        return examSites;
    }
}