Commit c997214d authored by kang.nie@inzymeits.com's avatar kang.nie@inzymeits.com
Browse files

初始化代码

parent 741c2feb
Pipeline #3107 failed with stages
in 0 seconds
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelAnalysisStopException;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.excel.utils.EasyExcelUtil;
import com.cusc.nirvana.user.rnr.enterprise.util.IccidUtil;
import com.cusc.nirvana.user.rnr.fp.client.SimVehicleRelClient;
import com.cusc.nirvana.user.rnr.fp.dto.SimVehicleBindingDTO;
import com.cusc.nirvana.user.rnr.fp.dto.SimVehicleBindingResult;
import com.cusc.nirvana.user.rnr.fp.dto.SimVehicleDTO;
import com.cusc.nirvana.user.rnr.mg.dto.SimFileHistoryDTO;
import com.cusc.nirvana.user.util.CuscStringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 车卡关系导入excel处理监听器
*/
@Slf4j
public class VehicleSimListener extends AnalysisEventListener<VehicleSimRelRow> {
private final static Logger LOGGER = LoggerFactory.getLogger(VehicleSimListener.class);
/**每隔500条提交数据处理*/
private static final int BATCH_COUNT = 500;
private SimVehicleRelClient simVehicleClient;
private SimFileHistoryDTO simFileHistoryDTO;
private String errorExcelFile;
private EasyExcelUtil easyExcelUtil;
private String tagUuid;
/**存放批数据*/
private List<VehicleSimRelInfoRow> successlist = new ArrayList<>();
private List<VehicleSimRelInfoRow> errorList = new ArrayList<>();
public VehicleSimListener(SimVehicleRelClient simVehicleClient,
SimFileHistoryDTO simFileHistoryDTO, String errorExcelFile, String tagUuid) {
this.simVehicleClient = simVehicleClient;
this.simFileHistoryDTO = simFileHistoryDTO;
this.errorExcelFile = errorExcelFile;
this.tagUuid = tagUuid;
}
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
super.invokeHeadMap(headMap, context);
if (headMap.size() < 12) {
simFileHistoryDTO.setErrorInfo("文件标题不符合模板要求,文件标题:[" + headMap.values() + "]");
throw new ExcelAnalysisStopException("文件不符合模板要求。文件标题:[" + headMap.values() + "]");
}
}
@Override
public void invoke(VehicleSimRelRow vehicleSimRelRow, AnalysisContext analysisContext) {
String failReason = validata(vehicleSimRelRow);
VehicleSimRelInfoRow infoRow = rowToInfoRow(vehicleSimRelRow);
if (CuscStringUtils.isNotEmpty(failReason)) {
infoRow.setErrorInfo(failReason);
errorList.add(infoRow);
} else {
successlist.add(infoRow);
}
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
if (!CollectionUtils.isEmpty(successlist)) {
processData();
}
if (!CollectionUtils.isEmpty(errorList)) {
simFileHistoryDTO.setErrorCount(errorList.size());
simFileHistoryDTO.setErrorInfo("导入车卡关系有问题,请下载文件查看详情");
processErrorData();
}
//excelFinish();
}
private void processErrorData() {
EasyExcel.write(errorExcelFile, VehicleSimRelInfoRow.class)
.sheet("sheet0")
.doWrite(errorList);
}
@Override
public void onException(Exception exception, AnalysisContext context) throws Exception {
log.error("e : {}",exception);
simFileHistoryDTO.setErrorInfo("导入车卡关系有问题,请下载文件查看详情");
excelFinish();
throw new ExcelAnalysisStopException("导入车卡关系有问题,请下载文件查看详情");
}
private void processData() {
SimVehicleBindingDTO bindingDTO = new SimVehicleBindingDTO();
bindingDTO.setOrganizationId(simFileHistoryDTO.getOrgUuid());
bindingDTO.setTagUuid(tagUuid);
bindingDTO.setCreator(simFileHistoryDTO.getCreator());
List<SimVehicleDTO> simVehicleDTOS = new ArrayList<>();
successlist.forEach(infoRow -> {
SimVehicleDTO dto = infoRowToDto(infoRow);
simVehicleDTOS.add(dto);
});
bindingDTO.setBindingList(simVehicleDTOS);
Response<SimVehicleBindingResult> response;
try {
response = simVehicleClient.importSimVehicle(bindingDTO);
}catch (Exception e) {
LOGGER.error("调用FP导入车卡关系失败,原因:", e);
response = Response.createError();
}
if (!response.isSuccess()) {
simVehicleDTOS.forEach(simVehicleDTO -> {
VehicleSimRelInfoRow infoRow = dtoToInfoRow(simVehicleDTO);
infoRow.setErrorInfo("导入失败");
//writeErrorExcel(infoRow);
errorList.add(infoRow);
});
return;
}
SimVehicleBindingResult result = response.getData();
if (result != null && result.getFailCount() != null) {
result.getFailData().forEach(failSim -> {
VehicleSimRelInfoRow infoRow = dtoToInfoRow(failSim);
infoRow.setErrorInfo(CuscStringUtils.isEmpty(infoRow.getErrorInfo()) ? "导入失败" :infoRow.getErrorInfo());
//writeErrorExcel(infoRow);
errorList.add(infoRow);
});
}
}
private VehicleSimRelInfoRow rowToInfoRow(VehicleSimRelRow row) {
VehicleSimRelInfoRow vehicleSimRelInfoRow = new VehicleSimRelInfoRow();
BeanUtils.copyProperties(row, vehicleSimRelInfoRow);
return vehicleSimRelInfoRow;
}
private SimVehicleDTO infoRowToDto(VehicleSimRelInfoRow infoRow) {
SimVehicleDTO simVehicleDTO = new SimVehicleDTO();
BeanUtils.copyProperties(infoRow, simVehicleDTO);
simVehicleDTO.setRealBySelf((infoRow.getRealBySelf() != null && infoRow.getRealBySelf() == 1) ? true : false);
return simVehicleDTO;
}
private VehicleSimRelInfoRow dtoToInfoRow(SimVehicleDTO dto) {
VehicleSimRelInfoRow infoRow = new VehicleSimRelInfoRow();
BeanUtils.copyProperties(dto, infoRow);
infoRow.setRealBySelf((dto.getRealBySelf() != null && dto.getRealBySelf()) ? 1 : 0);
infoRow.setErrorInfo(dto.getFailReason());
return infoRow;
}
/**
* 生成错误文件信息
* @param infoRow
*/
private void writeErrorExcel(VehicleSimRelInfoRow infoRow) {
simFileHistoryDTO.setErrorCount(simFileHistoryDTO.getErrorCount() + 1);
if (easyExcelUtil == null) {
easyExcelUtil = new EasyExcelUtil();
easyExcelUtil.init(errorExcelFile, "Sheet1", VehicleSimRelInfoRow.class);
}
List<VehicleSimRelInfoRow> infoRows = new ArrayList<>();
infoRows.add(infoRow);
easyExcelUtil.addExcel(infoRows);
}
/**
* 验证iccid和vin是否正确
* @param row
* @return
*/
private String validata(VehicleSimRelRow row) {
if (StringUtils.isBlank(row.getIccid()) || !IccidUtil.check(row.getIccid())) {
return "ICCID为空或格式不正确";
}
return "";
}
private void excelFinish() {
if (easyExcelUtil != null) {
easyExcelUtil.finish();
}
}
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
@Data
public class VehicleSimRelInfoRow extends VehicleSimRelRow {
/**导入失败原因*/
@ExcelProperty(value = "ERROR_INFO", index = 11)
private String errorInfo;
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
/**
* @author yuzp
* @file SimVehicleRow
* @date 2022/4/1
* @E-mail yuzp19@chinaunicom.cn
*/
@Data
public class VehicleSimRelRow {
@ExcelProperty(value = "VIN码", index = 0)
private String vin;
@ExcelProperty(value = "ICCID编码(*)", index = 1)
private String iccid;
@ExcelProperty(value = "是否允许补录\r\n(0:不允许,1:允许)", index = 2)
private Integer realBySelf;
@ExcelProperty(value = "车辆品牌编码", index = 3)
private String brand;
@ExcelProperty(value = "车辆品牌名称", index = 4)
private String brandName;
@ExcelProperty(value = "车型编码", index = 5)
private String vehicleModel;
@ExcelProperty(value = "车型名称", index = 6)
private String vehicleModelName;
@ExcelProperty(value = "车系编码", index = 7)
private String vehicleSeries;
@ExcelProperty(value = "车系名称", index = 8)
private String vehicleSeriesName;
@ExcelProperty(value = "年份", index = 9)
private Integer years;
@ExcelProperty(value = "卡位置\n\r(0:tbox,1:车机)", index = 10)
private String installLocation;
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelAnalysisStopException;
import com.cusc.nirvana.user.rnr.mg.dto.SimFileHistoryDTO;
import com.cusc.nirvana.user.util.CuscStringUtils;
import org.apache.commons.lang3.StringUtils;
import java.util.Map;
public class VehicleSimRowCountListener extends AnalysisEventListener<VehicleSimRelRow> {
private SimFileHistoryDTO simFileHistoryDTO;
private int rowIndex = 2;
public VehicleSimRowCountListener(SimFileHistoryDTO simFileHistoryDTO) {
this.simFileHistoryDTO = simFileHistoryDTO;
}
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
super.invokeHeadMap(headMap, context);
if (headMap.size() < 11) {
simFileHistoryDTO.setErrorInfo("文件标题不符合模板要求,文件标题:[" + headMap.values() + "]");
throw new ExcelAnalysisStopException("文件不符合模板要求。文件标题:[" + headMap.values() + "]");
}
}
@Override
public void invoke(VehicleSimRelRow data, AnalysisContext context) {
// String failReason = validata(data);
simFileHistoryDTO.setTotalCount(simFileHistoryDTO.getTotalCount() + 1);
// if (CuscStringUtils.isNotEmpty(failReason)) {
// throw new ExcelAnalysisStopException("导入文件在["+rowIndex+"]行校验失败,请核实!");
// }
rowIndex++;
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
}
/**
* 验证iccid和vin是否正确
* @param row
* @return
*/
private String validata(VehicleSimRelRow row) {
String failReason = "";
// if (StringUtils.isBlank(row.getVin())) {
// failReason = "VIN为空";
// }
if (StringUtils.isBlank(row.getIccid())) {
failReason = "ICCID为空";
}
return failReason;
}
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelAnalysisStopException;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.common.FileTypeEnum;
import com.cusc.nirvana.user.rnr.enterprise.excel.utils.EasyExcelUtil;
import com.cusc.nirvana.user.rnr.enterprise.util.IccidUtil;
import com.cusc.nirvana.user.rnr.fp.client.SimVehicleRelClient;
import com.cusc.nirvana.user.rnr.fp.dto.SimVehicleBindingResult;
import com.cusc.nirvana.user.rnr.fp.dto.SimVehicleDTO;
import com.cusc.nirvana.user.rnr.mg.client.OrgSimRelClient;
import com.cusc.nirvana.user.rnr.mg.dto.IccIdListRequestDTO;
import com.cusc.nirvana.user.rnr.mg.dto.OrgSimRelDTO;
import com.cusc.nirvana.user.rnr.mg.dto.SimFileHistoryDTO;
import com.cusc.nirvana.user.util.CuscStringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 车卡关系导入excel处理监听器
*/
@Slf4j
public class VehicleStatusListener extends AnalysisEventListener<VehicleStatusRelRow> {
private final static Logger LOGGER = LoggerFactory.getLogger(VehicleStatusListener.class);
/**每隔500条提交数据处理*/
private static final int BATCH_COUNT = 500;
private SimVehicleRelClient simVehicleClient;
private SimFileHistoryDTO simFileHistoryDTO;
private String errorExcelFile;
private EasyExcelUtil easyExcelUtil;
private String tagUuid;
private OrgSimRelClient orgSimRelClient;
/**存放批数据*/
private List<VehicleStatusRelInfoRow> successlist = new ArrayList<>();
private List<VehicleStatusRelInfoRow> errorList = new ArrayList<>();
public VehicleStatusListener(SimVehicleRelClient simVehicleClient,
SimFileHistoryDTO simFileHistoryDTO, String errorExcelFile, String tagUuid, OrgSimRelClient orgSimRelClient) {
this.simVehicleClient = simVehicleClient;
this.simFileHistoryDTO = simFileHistoryDTO;
this.errorExcelFile = errorExcelFile;
this.tagUuid = tagUuid;
this.orgSimRelClient = orgSimRelClient;
}
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
super.invokeHeadMap(headMap, context);
if (headMap.size() > 1) {
simFileHistoryDTO.setErrorInfo("文件标题不符合模板要求,文件标题:[" + headMap.values() + "]");
throw new ExcelAnalysisStopException("文件不符合模板要求。文件标题:[" + headMap.values() + "]");
}
}
@Override
public void invoke(VehicleStatusRelRow vehicleSimRelRow, AnalysisContext analysisContext) {
String failReason = validata(vehicleSimRelRow);
VehicleStatusRelInfoRow infoRow = rowToInfoRow(vehicleSimRelRow);
if (CuscStringUtils.isNotEmpty(failReason)) {
infoRow.setErrorInfo(failReason);
errorList.add(infoRow);
} else {
successlist.add(infoRow);
}
if (successlist.size() >= BATCH_COUNT) {
processData();
successlist.clear();
}
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
if (!CollectionUtils.isEmpty(successlist)) {
processData();
}
if (!CollectionUtils.isEmpty(errorList)) {
simFileHistoryDTO.setErrorCount(errorList.size());
simFileHistoryDTO.setErrorInfo("导入车卡关系有问题,请下载文件查看详情");
processErrorData();
}
//excelFinish();
}
private void processErrorData() {
EasyExcel.write(errorExcelFile, VehicleStatusRelInfoRow.class)
.sheet("sheet0")
.doWrite(errorList);
}
@Override
public void onException(Exception exception, AnalysisContext context) throws Exception {
log.error("e : {}",exception);
simFileHistoryDTO.setErrorInfo("导入车卡关系有问题,请下载文件查看详情");
excelFinish();
throw new ExcelAnalysisStopException("导入车卡关系有问题,请下载文件查看详情");
}
private void processData() {
//启动
IccIdListRequestDTO iccIdListStartOrDisable = new IccIdListRequestDTO();
List<String> iccidList = new ArrayList<>();
successlist.forEach(infoRow -> {
iccidList.add(infoRow.getIccid());
});
iccIdListStartOrDisable.setIccids(iccidList);
iccIdListStartOrDisable.setRnrStatus(simFileHistoryDTO.getFileType()== FileTypeEnum.CARCLOSE.getCode()?0:1);
//查询是否包含实名数据
Response<List<OrgSimRelDTO>> listResponse = orgSimRelClient.queryInfoByIccidAndStatus(iccIdListStartOrDisable);
if(!listResponse.isSuccess()||CollectionUtils.isEmpty(listResponse.getData())){
iccIdListStartOrDisable.getIccids().forEach(iccid -> {
VehicleStatusRelInfoRow infoRow = dtoToInfoRowExistIccid(iccid);
infoRow.setErrorInfo("iccid不正确,或没有实名数据");
errorList.add(infoRow);
});
return;
}
//查出存在的iccid
List<String> existenceList = listResponse.getData().stream().map(a->a.getIccid()).collect(Collectors.toList());
//过滤出iccid
List<String> nothingness = iccidList.stream().filter(a->existenceList.indexOf(a)==-1).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(nothingness)){
nothingness.forEach(iccid -> {
VehicleStatusRelInfoRow infoRow = dtoToInfoRowExistIccid(iccid);
infoRow.setErrorInfo("iccid不正确,或没有实名数据");
errorList.add(infoRow);
});
}
iccIdListStartOrDisable.setIccids(existenceList);
//如果是解绑的,需要查询卡是否有存在实名的
if(simFileHistoryDTO.getFileType()== FileTypeEnum.CARCLOSE.getCode()) {
//解绑状态为1
iccIdListStartOrDisable.setRnrStatus(1);
}else {
iccIdListStartOrDisable.setRnrStatus(0);
}
Response<SimVehicleBindingResult> response = orgSimRelClient.updateStatusByIccid(iccIdListStartOrDisable);
if (!response.isSuccess()) {
existenceList.forEach(iccid -> {
VehicleStatusRelInfoRow infoRow = dtoToInfoRowExistIccid(iccid);
infoRow.setErrorInfo("更新失败");
errorList.add(infoRow);
});
return;
}
}
private VehicleStatusRelInfoRow rowToInfoRow(VehicleStatusRelRow row) {
VehicleStatusRelInfoRow vehicleSimRelInfoRow = new VehicleStatusRelInfoRow();
BeanUtils.copyProperties(row, vehicleSimRelInfoRow);
return vehicleSimRelInfoRow;
}
private VehicleStatusRelInfoRow dtoToInfoRowExistIccid(String iccid) {
VehicleStatusRelInfoRow infoRow = new VehicleStatusRelInfoRow();
infoRow.setIccid(iccid);
return infoRow;
}
private VehicleStatusRelInfoRow dtoToInfoRow(VehicleStatusRelInfoRow message) {
VehicleStatusRelInfoRow infoRow = new VehicleStatusRelInfoRow();
infoRow.setIccid(message.getIccid());
return infoRow;
}
/**
* 验证iccid和vin是否正确
* @param row
* @return
*/
private String validata(VehicleStatusRelRow row) {
if (StringUtils.isBlank(row.getIccid()) || !IccidUtil.check(row.getIccid())) {
return "ICCID为空或格式不正确";
}
return "";
}
private void excelFinish() {
if (easyExcelUtil != null) {
easyExcelUtil.finish();
}
}
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
@Data
public class VehicleStatusRelInfoRow extends VehicleStatusRelRow {
/**导入失败原因*/
@ExcelProperty(value = "ERROR_INFO", index = 1)
private String errorInfo;
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
/**
* @author yuzp
* @file SimVehicleRow
* @date 2022/4/1
* @E-mail yuzp19@chinaunicom.cn
*/
@Data
public class VehicleStatusRelRow {
@ExcelProperty(value = "ICCID编码(*)", index = 0)
private String iccid;
}
package com.cusc.nirvana.user.rnr.enterprise.excel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelAnalysisStopException;
import com.cusc.nirvana.user.rnr.mg.dto.SimFileHistoryDTO;
import org.apache.commons.lang3.StringUtils;
import java.util.Map;
public class VehicleStatusRowCountListener extends AnalysisEventListener<VehicleStatusRelRow> {
private SimFileHistoryDTO simFileHistoryDTO;
private int rowIndex = 2;
public VehicleStatusRowCountListener(SimFileHistoryDTO simFileHistoryDTO) {
this.simFileHistoryDTO = simFileHistoryDTO;
}
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
super.invokeHeadMap(headMap, context);
if (headMap.size() > 1) {
simFileHistoryDTO.setErrorInfo("文件标题不符合模板要求,文件标题:[" + headMap.values() + "]");
throw new ExcelAnalysisStopException("文件不符合模板要求。文件标题:[" + headMap.values() + "]");
}
}
@Override
public void invoke(VehicleStatusRelRow data, AnalysisContext context) {
// String failReason = validata(data);
simFileHistoryDTO.setTotalCount(simFileHistoryDTO.getTotalCount() + 1);
// if (CuscStringUtils.isNotEmpty(failReason)) {
// throw new ExcelAnalysisStopException("导入文件在["+rowIndex+"]行校验失败,请核实!");
// }
rowIndex++;
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
}
}
package com.cusc.nirvana.user.rnr.enterprise.excel.utils;
import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.File;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
/**
* EasyExcel操作工具类(写,追加)
*/
public class EasyExcelUtil {
private final static Logger LOGGER = LoggerFactory.getLogger(EasyExcelUtil.class);
private ExcelWriter excelWriter = null;
private WriteSheet writeSheet = null;
/**
* EasyExcel工具类,初始化
* @param absFilePath 绝对路径
* @param sheetName 标签名字
* @param clazz 标题头(第一行)
*/
public void init(String absFilePath, String sheetName, Class clazz) {
if (excelWriter == null && writeSheet == null) {
File file = new File(absFilePath);
if (!file.exists()) {
file.getParentFile().mkdir();
}
// 指定写哪个标题头
excelWriter = EasyExcelFactory.write(absFilePath).head(clazz).build();
// 吐过同一个sheet只要创建一次
writeSheet = EasyExcelFactory.writerSheet(sheetName).build();
}
}
/**
* EasyExcel工具类,初始化
* @param outputStream 输出流
* @param sheetName 标签名字
* @param clazz 标题头(第一行)
*/
public void init(OutputStream outputStream, String sheetName, Class clazz) {
if (excelWriter == null && writeSheet == null) {
// 指定写哪个标题头
excelWriter = EasyExcelFactory.write(outputStream).head(clazz).build();
// 吐过同一个sheet只要创建一次
writeSheet = EasyExcelFactory.writerSheet(sheetName).build();
}
}
/**
* 写入Excel文件内容
* @param dataList
*/
public void addExcel(List<?> dataList) {
try {
excelWriter.write(dataList, writeSheet);
} catch (Exception e) {
LOGGER.error("追加Excel文件失败,原因:", e);
}
}
/**
* 最后调用,关闭流
*/
public void finish() {
if (excelWriter != null) {
excelWriter.finish();
}
}
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.dto.EnterpriseUnBindDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.VinCheckResponseDTO;
/**
* @className: EnterpriseUnBindService
* @description: 企业解绑
* @author: jk
* @date: 2022/6/16 18:22
* @version: 1.0
**/
public interface EnterpriseUnBindService {
VinCheckResponseDTO enterpriseUnBindCheck(EnterpriseUnBindDTO dto);
Response submitUnBind(EnterpriseUnBindDTO dto);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.PageResult;
import com.cusc.nirvana.user.rnr.enterprise.dto.UserAccountDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.UserAccountPageQueryDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.UserAccountUpdateDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.UserAddRequestDTO;
/**
* @author stayAnd
* @date 2022/4/15
*/
public interface IAccountService {
/**
* 创建账号
* @param dto
*/
void addAccount(UserAddRequestDTO dto);
/**
* 分页查询
* @param dto dto
* @return
*/
PageResult<UserAccountDTO> pageList(UserAccountPageQueryDTO dto);
/**
* 更新
* @param dto
*/
void update(UserAccountUpdateDTO dto);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.PageResult;
import com.cusc.nirvana.user.rnr.fp.dto.RnrOrderDetailDTO;
import com.cusc.nirvana.user.rnr.fp.dto.RnrOrderListQueryDTO;
import com.cusc.nirvana.user.rnr.fp.dto.RnrOrderListResponseDTO;
import com.cusc.nirvana.user.rnr.fp.dto.VinCardDTO;
import com.cusc.nirvana.user.rnr.mg.dto.MgRnrCardInfoDTO;
/**
* @author stayAnd
* @date 2022/8/3
*/
public interface IAdminRnrOrderService {
/**
* 分页查询
* @param dto dto
* @return 返回结果
*/
PageResult<RnrOrderListResponseDTO> pageListQuery(RnrOrderListQueryDTO dto);
/**
* 根据orderId分页查询
* @param dto dto
* @return 返回结果
*/
PageResult<VinCardDTO> queryCardPageByOrderId(MgRnrCardInfoDTO dto);
/**
* 查询详情
* @param orderId orderId
* @return 返回结果
*/
RnrOrderDetailDTO queryOrderDetail(String orderId);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.auth.identification.dto.RandomIdResp;
import com.cusc.nirvana.user.rnr.enterprise.dto.CaptchaResponseDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.LoginRequestDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.LoginResponseDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.LoginSmsRequestDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.LoginUserNameReqDTO;
/**
* @author stayAnd
* @date 2022/4/12
*/
public interface IAuthService {
/**
* 获取图片验证码
* @return
*/
CaptchaResponseDTO getGraphic(String platformSource);
/**
* 获取验证码
* @param dto
*/
void getSms(LoginSmsRequestDTO dto);
/**
* 登录
* @param loginRequestDTO
* @return
*/
LoginResponseDTO login(LoginRequestDTO loginRequestDTO);
/**
* 获取随机请求id-登录密码加密
* @return
*/
Response<RandomIdResp> getLoginSecretKey(String platformSource);
/**
* 登录-用户名+密码登录
* @param bean
* @return
*/
LoginResponseDTO userNameLogin(LoginUserNameReqDTO bean);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
public interface IBaseConfigService {
Response getDicData(String tenantNo);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.dto.ImportSimDTO;
/**
* @className: CarInfoImportService
* @description: 车辆信息导入接口
* @author: jk
* @date: 2022/6/28 19:06
* @version: 1.0
**/
public interface ICarInfoImportService {
Response<?> importSim(ImportSimDTO importSimDTO);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.PageResult;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.dto.ImportSimDTO;
import com.cusc.nirvana.user.rnr.fp.dto.FpCarInfoDTO;
/**
* @className: ICarInfoUploadService
* @description:
* @author: jk
* @date: 2022/6/28 19:17
* @version: 1.0
**/
public interface ICarInfoUploadService {
/**
* excel文件导入处理
* @param importSimDTO
* @return
*/
Response excelProcess(ImportSimDTO importSimDTO);
PageResult<FpCarInfoDTO> queryCarInfo(FpCarInfoDTO fpCarInfoDTO);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.auth.authentication.plug.user.UserSubjectUtil;
import com.cusc.nirvana.user.rnr.enterprise.dto.SecondHandUnbindRequestDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.VehicleCardRnrDTO;
import com.cusc.nirvana.user.rnr.fp.dto.FpRnrSmsInfoDTO;
import com.cusc.nirvana.user.rnr.fp.dto.UnbindReceiceSMSDTO;
import com.cusc.nirvana.user.rnr.mg.dto.MgRnrCardInfoDTO;
import com.cusc.nirvana.user.rnr.mg.dto.RnrOrderDTO;
import com.cusc.nirvana.user.util.CuscStringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.ArrayList;
import java.util.List;
/**
* 解绑接口
* @author yubo
* @since 2022-04-25 09:31
*/
public interface ICardUnBindService {
/**
* 二手车现车主解绑-自然人
*/
Response secondHandPersonalUnbind(SecondHandUnbindRequestDTO bean);
Response originalOwner(VehicleCardRnrDTO bean);
// Response receiveMessage(UnbindReceiceSMSDTO bean);
Response sendMessage(VehicleCardRnrDTO bean);
// Response checkMessageStatus(FpRnrSmsInfoDTO bean);
Response getIccidsByVin(VehicleCardRnrDTO bean);
Response checkOrderStatus(RnrOrderDTO bean);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.dto.ChangeTboxDTO;
import com.cusc.nirvana.user.rnr.fp.dto.FpRnrSmsInfoDTO;
import com.cusc.nirvana.user.rnr.fp.dto.UnbindReceiceSMSDTO;
public interface IChangeTboxService {
Response submit(ChangeTboxDTO bean);
Response queryResult(ChangeTboxDTO bean);
Response sendSMS(ChangeTboxDTO bean);
Response receiveMessage(UnbindReceiceSMSDTO bean);
Response checkSMSStatus(FpRnrSmsInfoDTO bean);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.PageResult;
import com.cusc.nirvana.user.rnr.enterprise.dto.DistributorAddDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.DistributorChangeAdminDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.DistributorDTO;
import com.cusc.nirvana.user.rnr.enterprise.dto.DistributorPageQueryDTO;
import java.util.Map;
/**
* @author stayAnd
* @date 2022/4/14
* 经销商相关
*/
public interface IDistributorService {
/**
* 新增经销商
* @param dto
*/
void add(DistributorAddDTO dto);
/**
* 经销商分页查询
* @param dto dto
* @return
*/
PageResult<DistributorDTO> page(DistributorPageQueryDTO dto);
Map<String,Object> pageToMap(DistributorPageQueryDTO dto);
/**
* 更新经销商
* @param distributorDTO
*/
void update(DistributorDTO distributorDTO);
/**
* 更换管理员
* @param dto
*/
void changeAdmin(DistributorChangeAdminDTO dto);
}
package com.cusc.nirvana.user.rnr.enterprise.service;
import com.cusc.nirvana.common.result.Response;
import com.cusc.nirvana.user.rnr.enterprise.dto.*;
import java.util.List;
import java.util.Map;
/**
* 企业实名认证服务接口
*
* @author huchenhui
* @date 2022-04-14
*/
public interface IEnterpriseRnrService {
/**
* 校验车卡关系
*
* @param dto dto bean
* @return 实例对象
*/
Response<EMVinCardResponseDTO> verifyVinCards(EnterpriseRnrVinCardInfoDTO dto);
/**
* 提交企业实名认证
*
* @param dto dto bean
* @return 实例对象
*/
Response<CompanyRnrResponseDTO> submitRnr(EnterpriseRnrCertificationInfoDTO dto);
/**
* 查询企业责任信息
* @param dto
*/
// List<EnterpriseRnrPersonDTO> queryEnterpriseRnrPerson(EnterpriseCorporationChangeDTO dto);
Map<String,Object> queryEnterpriseRnrPerson(EnterpriseCorporationChangeDTO dto);
/**
* 提交企业责任人变更
* @param bean
*/
void submitChange(EnterpriseCorporationChangeDTO bean);
/**
* 企业实名H5 提交
* @param dto
* @return
*/
EnterpriseRnrH5RespDTO submitRnrH5(EnterpriseRnrH5RequestDTO dto);
/**
* h5回调
* @param bean
* @return
*/
EnterpriseRnrH5CallBackRespDTO afreshLivenessUrl(LivenessCallbackReqDTO bean);
/**
* 企业实名H5 提交(使用文件)
* @param dto
* @return
*/
EnterpriseRnrH5RespDTO submitRnrWithFile(EnterpriseRnrH5FileRequestDTO dto);
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment