package com.jkcredit.invoice.hub.service.contract; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jkcredit.invoice.hub.mapper.ContractMapper; import com.jkcredit.invoice.hub.model.dto.contract.ContractDto; import com.jkcredit.invoice.hub.model.po.contract.ContractPo; import com.jkcredit.invoice.hub.model.vo.contract.ContractVo; import com.jkcredit.invoice.hub.service.base.BaseService; import com.jkcredit.invoice.hub.util.BeanUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import javax.annotation.Resource; /** * @description: * @author: xusonglin * @create: 2020/3/3 9:24 * @version: V1.0 **/ @Slf4j @Service public class ContractServiceImpl extends BaseService implements ContractService { @Resource ContractMapper contractMapper; @Override public void uploadContract(ContractDto contractDto) { // String filename = contractDto.getContract().getOriginalFilename(); // String[] args = filename.split("\\."); // if (!args[args.length - 1].equals("pdf")) { // throw new ServiceException("协议转换失败"); // } // // 参数设置 // validate(contractDto); // B2bContractAddRequest request = new B2bContractAddRequest(); // request.setCompanyNum(contractDto.getCompanyNum()); // request.setServiceType(contractDto.getServiceType()); // request.setServiceStartTime(contractDto.getServiceStartTime()); // request.setServiceEndTime(contractDto.getServiceEndTime()); // request.setContractFileName(filename); // // BASE64Encoder base64Encoder = new BASE64Encoder(); // String base64Str; // try { // base64Str = base64Encoder.encode(contractDto.getContract().getBytes()); // } catch (IOException ioe) { // log.error("上传协议转base64失败,失败原因:{}", ioe.getMessage()); // throw new ServiceException("协议转换失败"); // } // String fileName = request.getFilename(); // // // 接口调用 // B2bContractAddResponse response; // try { // // 调用upload 发送数据 // response = ETCCommHelper.upload(fileName, request, B2bContractAddResponse.class); // } catch (IOException e) { // log.error("[-uploadContract-] 网络错误:" + e.getMessage()); // throw new ServiceException("上传协议失败"); // } catch (ApiRequestException apie) { // log.error("[-uploadContract-] 错误信息:" + apie.getMessage()); // throw new ServiceException("上传协议失败,失败原因:" + apie.getMessage()); // } // try { // ContractPo contractPo = new ContractPo(); // BeanUtil.copyProperties(contractPo, contractDto); // contractPo.setBase64Str(base64Str); // contractPo.setCreateTime(new Date()); // contractPo.setContractNum(response.getContrantNum()); // contractMapper.insert(contractPo); // } catch (Exception e) { // log.error("上传协议失败,失败原因:{}", e.getMessage()); // throw new ServiceException("上传协议新增失败"); // } } @Override public IPage getContracts(Page page, ContractDto contractDto) { IPage contractPoIPage = contractMapper.getContracts(page, contractDto); return contractPoIPage.convert(this::convert); } private ContractVo convert(ContractPo po) { ContractVo vo = new ContractVo(); BeanUtil.copyProperties(vo, po); return vo; } }