|
package org.springblade.modules.accreditation.service.impl;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import lombok.AllArgsConstructor;
|
import org.springblade.common.utils.QRCodeUtil;
|
import org.springblade.modules.FTP.FtpUtil;
|
import org.springblade.modules.accreditation.excel.ExportSecurityBookPaperExcel;
|
import org.springblade.modules.accreditation.excel.ExportSecurityPaperExcel;
|
import org.springblade.modules.accreditation.entity.AccreditationRecords;
|
import org.springblade.modules.accreditation.mapper.AccreditationRecordsMapper;
|
import org.springblade.modules.accreditation.service.AccreditationRecordsService;
|
import org.springblade.modules.accreditation.vo.AccreditationRecordsVo;
|
import org.springframework.stereotype.Service;
|
|
import java.net.MalformedURLException;
|
import java.net.URL;
|
import java.net.URLEncoder;
|
import java.text.SimpleDateFormat;
|
import java.util.ArrayList;
|
import java.util.Arrays;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 制证记录服务实现类
|
* @author zhongrj
|
*/
|
@Service
|
@AllArgsConstructor
|
public class AccreditationRecordsServiceImpl extends ServiceImpl<AccreditationRecordsMapper, AccreditationRecords> implements AccreditationRecordsService {
|
|
|
/**
|
* 自定义分页
|
* @param page
|
* @param accreditationRecords
|
* @return
|
*/
|
@Override
|
public IPage<AccreditationRecordsVo> selectAccreditationRecordsPage(IPage<AccreditationRecordsVo> page, AccreditationRecordsVo accreditationRecords) {
|
List<AccreditationRecordsVo> accreditationRecordsVos = baseMapper.selectAccreditationRecordsPage(page, accreditationRecords);
|
return page.setRecords(accreditationRecordsVos);
|
}
|
|
/**
|
* 制证申请(批量)
|
* @param accreditationRecords 制证记录信息对象
|
*/
|
@Override
|
public boolean securityApply(AccreditationRecordsVo accreditationRecords) {
|
//读取ids
|
List<String> list = Arrays.asList(accreditationRecords.getIds().split(","));
|
//遍历
|
list.forEach(id->{
|
AccreditationRecords records = new AccreditationRecords();
|
records.setCreateTime(new Date());
|
records.setCreateUser(accreditationRecords.getCreateUser());
|
records.setStatus(1);
|
records.setAuditStatus(1);
|
records.setType(accreditationRecords.getType());
|
records.setUserId(Long.parseLong(id));
|
//新增
|
this.save(records);
|
|
//内网新增
|
String s = "insert into sys_accreditation_records(id,user_id,create_time,create_user,status,type,audit_status) " +
|
"values(" + "'" + records.getId() + "'" + ","
|
+ "'" + records.getUserId() + "'" + ","
|
+ "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(records.getCreateTime()) + "'" + ","
|
+ "'" + records.getCreateUser() +"'" + ","
|
+ "'" + records.getStatus() +"'" + ","
|
+ "'" + records.getType() +"'" + ","
|
+"'" + records.getAuditStatus() + "'" + ")";
|
FtpUtil.sqlFileUpload(s);
|
});
|
return true;
|
}
|
|
/**
|
* 自定义详情信息
|
* @param accreditationRecords
|
* @return
|
*/
|
@Override
|
public AccreditationRecordsVo getAccreditationRecordsDetails(AccreditationRecords accreditationRecords) {
|
return baseMapper.getAccreditationRecordsDetails(accreditationRecords);
|
}
|
|
/**
|
* 导出保安员证信息
|
* @param accreditationRecords
|
* @return
|
*/
|
@Override
|
public List<ExportSecurityPaperExcel> exportSecurityPaperList(AccreditationRecordsVo accreditationRecords) {
|
//查询数据
|
List<AccreditationRecordsVo> accreditationRecordsVos = baseMapper.exportSecurityPaperList(accreditationRecords);
|
if (accreditationRecordsVos.size()>0) {
|
//返回的集合数据
|
List<ExportSecurityPaperExcel> list = new ArrayList<>();
|
//遍历
|
accreditationRecordsVos.forEach(accreditationRecordsVo -> {
|
ExportSecurityPaperExcel excel = new ExportSecurityPaperExcel();
|
//数据转换封装
|
excel.setRealName(accreditationRecordsVo.getRealName());
|
excel.setIdCardNo(accreditationRecordsVo.getIdCardNo());
|
excel.setDeptName(accreditationRecordsVo.getDeptName());
|
//如果头像有
|
if (null != accreditationRecordsVo.getAvatar() && accreditationRecordsVo.getAvatar() != "") {
|
try {
|
if (accreditationRecordsVo.getAvatar().contains("http:")) {
|
excel.setAvatar(new URL(accreditationRecordsVo.getAvatar()));
|
}
|
} catch (MalformedURLException e) {
|
e.printStackTrace();
|
}
|
}
|
//如果保安证编号不为空
|
if (null != accreditationRecordsVo.getSecurityNumber() && accreditationRecordsVo.getSecurityNumber() != "") {
|
//去生成二维码
|
String url = "http://223.82.109.183:2080/securityInfo.html";
|
String encoded = null;
|
try {
|
encoded = URLEncoder.encode(accreditationRecordsVo.getSecurityNumber(), "UTF-8");
|
String content = url + "?securityNumber=" + encoded;
|
URLEncoder.encode(content, "utf-8");
|
byte[] qrCodeImage = QRCodeUtil.getQRCodeImage(content, 350, 350);
|
//设置二维码
|
excel.setQrCode(qrCodeImage);
|
excel.setSecurityNumber(accreditationRecordsVo.getSecurityNumber());
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
list.add(excel);
|
});
|
return list;
|
}
|
return null;
|
}
|
|
/**
|
* 导出证书制证信息
|
* @param accreditationRecords
|
* @return
|
*/
|
@Override
|
public List<ExportSecurityBookPaperExcel> exportSecurityBookPaper(AccreditationRecordsVo accreditationRecords) {
|
//查询数据
|
List<ExportSecurityBookPaperExcel> accreditationRecordsVos = baseMapper.exportSecurityBookPaper(accreditationRecords);
|
return accreditationRecordsVos;
|
}
|
|
/**
|
* 导出证书制证信息(包含照片)
|
*/
|
@Override
|
public List<AccreditationRecordsVo> exportSecurityBookPapers(AccreditationRecordsVo accreditationRecords) {
|
//查询数据
|
List<AccreditationRecordsVo> accreditationRecordsVos = baseMapper.exportSecurityBookPapers(accreditationRecords);
|
System.out.println("accreditationRecordsVos = " + accreditationRecordsVos.size());
|
return accreditationRecordsVos;
|
}
|
}
|