package com.ruoyi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZCertificate;
import com.ruoyi.domain.ZExperience;
import com.ruoyi.mapper.ZCertificateMapper;
import com.ruoyi.service.ZCertificateService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
*
* 持有出入境证件情况 服务实现类
*
*
* @author ojq
* @since 2023-03-14
*/
@Slf4j
@Service
public class ZCertificateServiceImpl extends ServiceImpl implements ZCertificateService {
@Override
public List selectExperienceList(Long userId) {
LambdaQueryWrapper lqw = new LambdaQueryWrapper<>();
lqw.eq(ZCertificate::getUserId,userId);
return list(lqw);
}
@Override
public boolean importExcel(MultipartFile file, Long userId) {
ExcelUtil util = new ExcelUtil<>(ZCertificate.class);
List certificateList = null;
try {
certificateList = util.importExcel(file.getInputStream());
} catch (Exception e) {
e.printStackTrace();
}
assert certificateList != null;
List list = certificateList.stream().peek(
(certificate) -> certificate.setUserId(userId)
).collect(Collectors.toList());
log.info("资产列表为:{}",list);
return saveBatch(list);
}
@Override
public AjaxResult listType() {
List typeList = list(new QueryWrapper().select("distinct type"));
ArrayList types = new ArrayList<>();
for (ZCertificate zCertificate : typeList) {
types.add(zCertificate.getType());
}
return AjaxResult.success(types);
}
}