Merge branch 'release' of http://192.168.12.182/invoice/pt into release

release
zhenghaiyang@ele-cloud.com 2 years ago
commit 219e4fd0ab
  1. 1
      dxhy-admin/src/main/java/com/dxhy/admin/sys/service/impl/SysUserServiceImpl.java
  2. 68
      dxhy-base/src/main/java/com/dxhy/base/service/receipt/BaseReceiptInvoiceServiceImpl.java
  3. 1
      dxhy-common/src/main/java/com/dxhy/common/util/ExcelPoiUtil.java
  4. 4
      dxhy-core/src/main/java/com/dxhy/core/controller/DictDataController.java
  5. 5
      dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/EmailMaintainController.java
  6. 1
      dxhy-core/src/main/java/com/dxhy/core/model/InvoiceMainBodyVO.java
  7. 2
      dxhy-core/src/main/java/com/dxhy/core/service/openservice/impl/OpenServicePlatformServiceImpl.java
  8. 2
      dxhy-core/src/main/java/com/dxhy/core/service/openservice/model/ocr/OcrDataTypeEnum.java
  9. 36
      dxhy-core/src/main/java/com/dxhy/core/thread/PoolAddTaxThread.java
  10. 2
      dxhy-core/src/main/java/com/dxhy/core/thread/QypcsmkpExportThread.java
  11. 8
      dxhy-core/src/main/java/com/dxhy/core/util/InvoiceQueryUtil.java
  12. 1
      dxhy-core/src/main/resources/mapper/TicketMapper.xml
  13. 2
      dxhy-customs/src/main/java/com/dxhy/customs/service/impl/CustomsSignServiceImpl.java
  14. 80
      dxhy-erp/src/main/java/com/dxhy/erp/controller/SDNYMainProcessController.java
  15. 21
      dxhy-erp/src/main/java/com/dxhy/erp/service/SNPushCheckRecordService.java
  16. 19
      dxhy-erp/src/main/java/com/dxhy/erp/service/impl/SignSaveInvoiceInfoServiceImpl.java
  17. 14
      dxhy-extend/src/main/resources/mapper/ExtInvoicePoolMapper.xml
  18. 8
      dxhy-extend/src/main/resources/mapper/index/ExtIndexStatisticsMapper.xml
  19. 12
      dxhy-sign/src/main/java/com/dxhy/sign/service/fpqs/impl/SignFpqsServiceImpl.java

@ -117,6 +117,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserDao, SysUserEntity> i
user.setCreateTime(new Date());
String salt = RandomStringUtils.randomAlphanumeric(20);
user.setSalt(salt);
user.setScanType("5");
user.setPlpassword(Base64.encode(user.getPassword()));
user.setPassword(new BCryptPasswordEncoder(UserConstant.PW_ENCORDER_SALT).encode(user.getPassword()));
this.saveOrUpdate(user);

@ -64,14 +64,15 @@ public class BaseReceiptInvoiceServiceImpl extends MpBaseServiceImpl<BaseTDxReco
// 查询结果封装为view
List<BaseInvoiceRespVO> voList = new ArrayList<>();
int index = 1;
for (BaseTDxRecordInvoice record : pageInfo.getRecords()) {
BaseInvoiceRespVO vo = convertToInvoiceView(record);
// 序号计算 = (当前页-1)*每页条数+1
vo.setXh((page.getCurrent() - 1) * page.getSize() + index);
index++;
voList.add(vo);
if (pageInfo.getRecords() != null && pageInfo.getRecords().size() > 0){
for (BaseTDxRecordInvoice record : pageInfo.getRecords()) {
BaseInvoiceRespVO vo = convertToInvoiceView(record);
// 序号计算 = (当前页-1)*每页条数+1
vo.setXh((page.getCurrent() - 1) * page.getSize() + index);
index++;
voList.add(vo);
}
}
// 设置记录总数
json.put("total", pageInfo.getTotal());
json.put("datalist", voList);
@ -84,13 +85,17 @@ public class BaseReceiptInvoiceServiceImpl extends MpBaseServiceImpl<BaseTDxReco
// 可转出金额 = 金额 - 已转出金额
BigDecimal bigOut = new BigDecimal(0);
bigOut = record.getOutInvoiceAmout() == null ? bigOut : record.getOutInvoiceAmout();
String canOutAmount = MathUtil.sub(record.getInvoiceAmount().toPlainString(), bigOut.toPlainString());
if (record.getInvoiceAmount() != null){
String canOutAmount = MathUtil.sub(record.getInvoiceAmount().toPlainString(), bigOut.toPlainString());
amount = amount.add(new BigDecimal(canOutAmount));
}
// 可转出税额 = 税额 - 已转出税额
BigDecimal bigTax = new BigDecimal(0);
bigTax = record.getOutTaxAmount() == null ? bigTax : record.getOutTaxAmount();
String canOutTax = MathUtil.sub(record.getDkTaxAmount().toPlainString(), bigTax.toPlainString());
tax = tax.add(new BigDecimal(canOutTax));
amount = amount.add(new BigDecimal(canOutAmount));
if (record.getDkTaxAmount() != null){
String canOutTax = MathUtil.sub(record.getDkTaxAmount().toPlainString(), bigTax.toPlainString());
tax = tax.add(new BigDecimal(canOutTax));
}
}
// 合计金额 and 合计税额
@ -215,7 +220,9 @@ public class BaseReceiptInvoiceServiceImpl extends MpBaseServiceImpl<BaseTDxReco
// 销方名称
vo.setSellerName(fpxx.getXfName());
// 认证日期
vo.setCertDate(DateUtils.dateToStr(fpxx.getRzhDate()));
if (fpxx.getRzhDate() != null){
vo.setCertDate(DateUtils.dateToStr(fpxx.getRzhDate()));
}
// 发票代码
vo.setInvoiceCode(fpxx.getInvoiceCode());
// 发票号码
@ -223,29 +230,44 @@ public class BaseReceiptInvoiceServiceImpl extends MpBaseServiceImpl<BaseTDxReco
// 发票类型
vo.setInvoiceType(fpxx.getInvoiceType());
// 开票日期
vo.setInvoiceDate(DateUtils.dateToStr(fpxx.getInvoiceDate()));
if (fpxx.getInvoiceDate() != null){
vo.setInvoiceDate(DateUtils.dateToStr(fpxx.getInvoiceDate()));
}
// 发票状态
vo.setInvoiceStatusName(dictdetaServcice.queryDictName(DictConstant.INVOICE_STATUS,fpxx.getInvoiceStatus()));
// 税额
vo.setTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getTaxAmount().toPlainString())));
if (fpxx.getTaxAmount() != null){
vo.setTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getTaxAmount().toPlainString())));
}
// 金额
vo.setAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getInvoiceAmount().toPlainString())));
if (fpxx.getInvoiceAmount() != null){
vo.setAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getInvoiceAmount().toPlainString())));
}
// 抵扣税额
vo.setDkTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getDkTaxAmount().toPlainString())));
if (fpxx.getDkTaxAmount() != null){
vo.setDkTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getDkTaxAmount().toPlainString())));
}
// 可转出金额 = 金额 - 已转出金额
BigDecimal bigOut = new BigDecimal(0);
bigOut = fpxx.getOutInvoiceAmout() == null ? bigOut : fpxx.getOutInvoiceAmout();
String canOutAmount = MathUtil.sub(fpxx.getInvoiceAmount().toPlainString(), bigOut.toPlainString());
vo.setCanOutAmount(canOutAmount);
vo.setAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(canOutAmount)));
if (fpxx.getInvoiceAmount() != null){
String canOutAmount = MathUtil.sub(fpxx.getInvoiceAmount().toPlainString(), bigOut.toPlainString());
vo.setCanOutAmount(canOutAmount);
vo.setAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(canOutAmount)));
}
// 可转出税额 = 税额 - 已转出税额
BigDecimal bigTax = new BigDecimal(0);
bigTax = fpxx.getOutTaxAmount() == null ? bigTax : fpxx.getOutTaxAmount();
String canOutTax = MathUtil.sub(fpxx.getDkTaxAmount().toPlainString(), bigTax.toPlainString());
vo.setCanOutTaxAmount(canOutTax);
vo.setDkTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(canOutTax)));
if (fpxx.getDkTaxAmount() != null){
String canOutTax = MathUtil.sub(fpxx.getDkTaxAmount().toPlainString(), bigTax.toPlainString());
vo.setCanOutTaxAmount(canOutTax);
vo.setDkTaxAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(canOutTax)));
}
// 价税合计
vo.setTotalAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getTotalAmount().toPlainString())));
if (fpxx.getTotalAmount() != null){
vo.setTotalAmount(AmountFormatUtil.fmtMicrometer(MathUtil.round(fpxx.getTotalAmount().toPlainString())));
}
return vo;
}
}

@ -137,6 +137,7 @@ public class ExcelPoiUtil {
}
cn.hutool.poi.excel.ExcelWriter writer1 = ExcelUtil.getWriter(true);
writer = EasyExcel.write(excelFile).registerWriteHandler(new CustomCellWriteHandler()).build();
log.info("title={}",title);
writeSheet = EasyExcel.writerSheet(1).sheetName(title).build();
writeTable = EasyExcel.writerTable().head(titles).build();
writer.write(list, writeSheet, writeTable);

@ -32,15 +32,19 @@ public class DictDataController extends AbstractController {
@PostMapping("/getDict")
public ResponseEntity<?> getDict(@RequestBody Map<String, Object> map) {
log.info("查询字典接收到的参数====>{}",map);
String dictType = (String)map.get("dictType");
if (StringUtils.isBlank(dictType)) {
return ResponseEntity.ok(R.error().put("data", "字典编码不能为空"));
}
String[] codes = dictType.split(";");
log.info("codes数组的值{}",codes);
JSONObject json = new JSONObject();
for (String code : codes) {
List<DictdetaModel> models = dictdetaServcice.selectDictdeta(code);
json.put(code, models);
log.info("在redis中查询参数为{}",code);
log.info("redis返回的值为{}",models);
}
return ResponseEntity.ok(R.ok().put("data", json));

@ -18,6 +18,7 @@ import com.google.common.collect.Lists;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -290,7 +291,9 @@ public class EmailMaintainController extends AbstractController {
String jsonString = Base64.encode(json.toJSONString());
return ResponseEntity.ok(R.ok().put("data",jsonString));
}else{
return ResponseEntity.ok(R.ok().put("data","未查询到用户名为"+userName+"数据"));
R result = new R(500,"未查询到该用户");
// return ResponseEntity.ok(R.error().put("data","未查询到用户名为"+userName+"数据"));
return ResponseEntity.ok(result);
}
}

@ -52,6 +52,7 @@ public class InvoiceMainBodyVO {
private String departureCity;
private String reachingCity;
private String taxRate;
private String taxCode;
private String selectId;
private Integer xh;
private String remark;

@ -294,7 +294,7 @@ public class OpenServicePlatformServiceImpl implements IOpenServicePlatformServi
invoiceOcrData.setGMFDZDH(itemData.get(OcrDataTypeEnum.VAT_INVOICE_PAYER_ADDR_TELL.getKey()));
invoiceOcrData.setGMFYHZH(itemData.get(OcrDataTypeEnum.VAT_INVOICE_PAYER_BANK_ACCOUNT.getKey()));
invoiceOcrData.setHJJE(itemData.get(OcrDataTypeEnum.VAT_INVOICE_PRICE_LIST.getKey()));
invoiceOcrData.setHJJE(itemData.get(OcrDataTypeEnum.VAT_INVOICE_PRICE.getKey()));
//是否代开 vat_invoice_zhuan_yong_flag TODO

@ -33,7 +33,7 @@ public enum OcrDataTypeEnum {
VAT_INVOICE_GOODS_LIST ("vat_invoice_goods_list","货物或服务名称"),
VAT_INVOICE_GOODS("vat_invoice_goods","货物或服务名称"),
VAT_INVOICE_PRICE_LIST ("vat_invoice_price_list","金额明细"),
VAT_INVOICE_PRICE ("vat_invoice_price","金额明细"),
VAT_INVOICE_PRICE ("vat_invoice_price","合计"),
VAT_INVOICE_TAX_RATE_LIST ("vat_invoice_tax_rate_list","税率明细"),
VAT_INVOICE_TAX_LIST ("vat_invoice_tax_list","税额明细"),
VAT_INVOICE_TAX ("vat_invoice_tax","税额明细"),

@ -66,16 +66,16 @@ public class PoolAddTaxThread extends BaseThread {
* 导出excel的列名
*/
private final String[] titleColumns = {"序号", "发票类型", "发票代码", "发票号码", "发票状态", "开票日期", "销方名称", "销方税号", "金额", "税额",
"有效税额", "价税合计", "认证状态", "认证类型", "认证日期", "认证方式", "认证人", "采集状态", "底账库采集时间", "采集来源", "签收方式", "签收状态", "签收日期", "签收人",
"有效税额", "价税合计", "认证状态", "认证类型", "认证日期", "认证方式", "认证人", "采集状态", "底账库采集时间", "采集来源", "签收方式", "签收状态", "签收日期", "签收人",
"入账月份", "入账状态", "凭证号", "是否末次摊销", "摊销金额", "剩余金额", "业务单号", "入池时间","凭证号","过账时间","账期","影像id"};
/**
* 导出excel的列名
*/
private final String[] detailTitleColumns =
{"序号", "发票代码", "发票号码", "货物或应税劳务名称", "规格型号", "单位", "数量", "单价", "金额", "税额", "税率", "车牌号", "类型", "通行日期起", "通行日期止"};
{"序号", "发票代码", "发票号码", "货物或应税劳务名称", "规格型号", "单位", "数量", "单价", "金额", "税额", "税率", "车牌号", "类型", "通行日期起", "通行日期止"};
// private Sheet sheet;
// private Sheet sheet;
// private Table table;
private WriteSheet writeSheet;
private WriteTable writeTable;
@ -95,8 +95,8 @@ public class PoolAddTaxThread extends BaseThread {
private final TabulateRedisServiceImpl tabulateRedisService;
public PoolAddTaxThread(IExcelExportlogService exportLogService, List<TDxExcelExportlog> exportLogs,
PoolPaperService poolPaperService, FileService fileService, Sender sender, IFeginWebsocket feginWebsocket,
TabulateRedisServiceImpl tabulateRedisService) {
PoolPaperService poolPaperService, FileService fileService, Sender sender, IFeginWebsocket feginWebsocket,
TabulateRedisServiceImpl tabulateRedisService) {
this.exportLogService = exportLogService;
this.exportLogs = exportLogs;
this.poolPaperService = poolPaperService;
@ -164,7 +164,7 @@ public class PoolAddTaxThread extends BaseThread {
}
if (prams.get("kpksrq") != null && !"".equals(prams.get("kpksrq"))) {
pramsMap.put("kpksrq",
DateUtils.getMorning(DateUtils.strToDate(prams.get("kpksrq").toString())));
DateUtils.getMorning(DateUtils.strToDate(prams.get("kpksrq").toString())));
}
if (prams.get("kpjsrq") != null && !"".equals(prams.get("kpjsrq"))) {
pramsMap.put("kpjsrq", DateUtils.getNight(DateUtils.strToDate(prams.get("kpjsrq").toString())));
@ -180,7 +180,7 @@ public class PoolAddTaxThread extends BaseThread {
pramsMap.put("qsyf", prams.get("qsyf"));
}
if (prams.get("inAccountMonth") == null && "".equals(prams.get("inAccountMonth"))
&& !"1".equals(prams.get("inAccountStatus"))) {
&& !"1".equals(prams.get("inAccountStatus"))) {
pramsMap.put("inAccountMonth", "");
}else {
pramsMap.put("inAccountMonth", inAccountMonth);
@ -197,7 +197,6 @@ public class PoolAddTaxThread extends BaseThread {
pramsMap.put("inAccountStatus", inAccountStatus);
pramsMap.put("company", company);
pramsMap.put("invoiceSource",prams.getString("invoiceSource"));
log.info("传入的参数为:{}",pramsMap);
// 导出文件名
StringBuilder ftpFileName = new StringBuilder();
ftpFileName.append(fileNamePrefix);
@ -225,7 +224,6 @@ public class PoolAddTaxThread extends BaseThread {
StringBuilder excelFile = new StringBuilder();
excelFile.append(fileService.getLocalPathDefault());
excelFile.append(ftpFileName.toString());
log.info("导出的文件名字为:{}",excelFile.toString());
File filePath = new File(getFilePath(excelFile.toString()));
if (!filePath.exists()) {
filePath.mkdirs();
@ -247,12 +245,12 @@ public class PoolAddTaxThread extends BaseThread {
// 递归导出数据到excel 发票信息
this.cicleExport(pramsMap, default_curr, excelFile.toString(), out, writer);
// this.detailCicleExport(pramsMap, default_curr, excelFile.toString(), out, writer);
// writer.finish();
this.detailCicleExport(pramsMap, default_curr, excelFile.toString(), out, writer);
writer.finish();
// FTP文件存储路径
String[] toDay = DateUtil.today().split("-");
String ftpFilePath = fileService.getPathPrefix() + userName + "/" + "excelFile/" + toDay[0] + "/"
+ toDay[1] + "/" + toDay[2] + "/" + ftpFileName.toString();
+ toDay[1] + "/" + toDay[2] + "/" + ftpFileName.toString();
// 文件上传ftp
fileService.uploadFile(ftpFilePath, excelFile.toString());
@ -277,7 +275,6 @@ public class PoolAddTaxThread extends BaseThread {
// 记录导出出错状态
exportLogService.updateFail(id, errmsg, dbName);
} finally {
writer.finish();
// 发送导出消息到mq
String responseResult = JsonResponseUtils.responseResult(msg);
sender.sendToMsg(responseResult);
@ -303,7 +300,7 @@ public class PoolAddTaxThread extends BaseThread {
*/
private boolean cicleExport(Map<String, Object> pramsMap, int curr, String excelFile, OutputStream out,
ExcelWriter writer) throws Exception {
ExcelWriter writer) throws Exception {
// 查询指定页数的数据
JSONObject pageData = poolPaperService.listAddTaxInvoice(pramsMap, curr, default_size);
boolean hasNext = pageData.getBooleanValue("hasNext");
@ -343,7 +340,7 @@ public class PoolAddTaxThread extends BaseThread {
*/
private boolean detailCicleExport(Map<String, Object> pramsMap, int curr, String excelFile, OutputStream out,
ExcelWriter writer) throws Exception {
ExcelWriter writer) throws Exception {
// 查询指定页数的数据
JSONObject pageData = poolPaperService.listAddTaxInvoiceDetail(pramsMap, curr, default_size);
boolean hasNext = pageData.getBooleanValue("hasNext");
@ -358,20 +355,20 @@ public class PoolAddTaxThread extends BaseThread {
int nextPage = pageData.getIntValue("nextPage");
// 写入当前页数据
exportListArrayToExcel(excelFile, title, detailTitleColumns, dataList, firstPage, false, 2, "货物信息", out,
writer);
writer);
// 更新页数
return detailCicleExport(pramsMap, nextPage, excelFile, out, writer);
} else {
// 写入最后一页数据
exportListArrayToExcel(excelFile, title, detailTitleColumns, dataList, firstPage, true, 2, "货物信息", out,
writer);
writer);
return hasNext;
}
}
public void exportListArrayToExcel(String excelFile, String title, String[] titleColumns, List<String[]> dataList,
boolean firstPage, boolean lastPage, int sheetNo, String sheetName, OutputStream out, ExcelWriter writer) {
boolean firstPage, boolean lastPage, int sheetNo, String sheetName, OutputStream out, ExcelWriter writer) {
String[] datas;
if (firstPage) {
@ -388,9 +385,8 @@ public class PoolAddTaxThread extends BaseThread {
String titleColumn = datas[var12];
titles.add(Collections.singletonList(titleColumn));
}
log.info("导出文件的标头为:{}",titles);
writeTable.setHead(titles);
writeTable.setHead(titles);
List<List<String>> list = new ArrayList<>();
for (String[] strings : dataList) {

@ -142,7 +142,7 @@ public class QypcsmkpExportThread extends BaseThread {
}
ftpFileName.append(DateUtils.getNowTimeStamp());
title = ftpFileName.toString();
// title = ftpFileName.toString();
ftpFileName.append(fileNameSurfix);
// 本地文件存储路径

@ -152,9 +152,11 @@ public class InvoiceQueryUtil {
// 通过税号获取id和key
log.info("查验一张发票信息税号为 taxNo{}",taxNo);
TAcOrg tacOrg = confirmDao.findIdAndKeyByTaxno(taxNo);
if(enterprisePermissionFlag){
secretId = tacOrg.getAceId();
secretKey = tacOrg.getAceKey();
if(tacOrg != null) {
if (enterprisePermissionFlag) {
secretId = tacOrg.getAceId();
secretKey = tacOrg.getAceKey();
}
}
try {
InvoiceUtil iu = new InvoiceUtil(invoiceCode);

@ -133,6 +133,7 @@
tax_amount,
total_amount,
tax_rate,
tax_code,
train_number,
date_format(ticket_departure_time,'%Y-%m-%d %H:%i:%s') ticket_departure_time,
date_format(ticket_arrival_time,'%Y-%m-%d %H:%i:%s') ticket_arrival_time,

@ -466,6 +466,8 @@ public class CustomsSignServiceImpl extends MpBaseServiceImpl<CustomsRecordDao,
ResultData resultData = new ResultData<>();
JSONObject tabulateMenu = tabulateRedisService.getTabulateMenu(company, menuId);
resultData.putTabulateMenu(tabulateMenu);
resultData.setNumberSerial(false);
resultData.setTotal(returnList.size());
return resultData.setDataList(returnList).toJsonBase();
}

@ -27,10 +27,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.ResponseEntity;
import org.springframework.util.Base64Utils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@ -48,6 +45,7 @@ import java.util.*;
*/
@SuppressWarnings({"AlibabaUndefineMagicConstant", "AlibabaMethodTooLong"})
@RestController
@RequestMapping("/sn")
@Slf4j
public class SDNYMainProcessController extends AbstractController {
@ -90,23 +88,22 @@ public class SDNYMainProcessController extends AbstractController {
@Resource
private MixedSignatureDao mixedSignatureDao;
@Resource
private SysDeptDao sysDeptDao;
/**
* 查验发票
*/
@PostMapping("/sn/singleInvoiceCheck")
@PostMapping("/singleInvoiceCheck")
@ResponseBody
@SysLog("发票查验")
public ResponseEntity<String> singleInvoiceCheck(@RequestBody Map<String, String> pramsMap) throws ParseException {
log.info("传入的参数为:{}", pramsMap);
String userid = "101833";
String dbName = "business";
String company = "BIGB";
// 入参统一在入口处理
// String userid = getLoginName();
// String dbName = getUserInfo().getDbName();
// String company = getUserInfo().getCompany();
JSONObject checkInvoiceResult = null;
//挡板开关
if("1".equals(isPresure)){
String base64 = "ewoJImNvZGUiOiAxMDAwLAoJImRhdGEiOiB7CgkJImRyYXdlZU5hbWUiOiAiIiwKCQkiYnVzaW5lc3NVbml0IjogIiIsCgkJImxlbW9uTWFya2V0VGF4Tm8iOiAiOTEzNzAxMjVNQTNRQUtDMjhBIiwKCQkiYnJhbmRNb2RlbCI6ICLliKvlhYvniYxTR002NTIxVUJBMSIsCgkJInZlaGljbGVJZGVudGlmaWNhdGlvbk5vIjogIkxTR1VBODJMN01HMDgzODcwIiwKCQkiaWRjYXJkTm8iOiAiIiwKCQkic291cmNlIjogIiIsCgkJInRyYW5zcG9ydFJvdXRlIjogIiIsCgkJInRvdGFsVGF4IjogIiIsCgkJImJ1c2luZXNzVW5pdEFkZHJlc3MiOiAiIiwKCQkibGljZW5zZVBsYXRlIjogIuS6kUFFODVTNSIsCgkJInNlbGxlclVuaXRPckluZGl2aWR1YWwiOiAi5rWO5Y2X5YyX5p6B5pif5rG96L2m5pyN5Yqh5pyJ6ZmQ5YWs5Y+45LqR5Y2X5YiG5YWs5Y+4IiwKCQkiYWRtaW5pc3RyYXRpdmVEaXZpc2lvbk5vIjogIiIsCgkJImNhcnJpZXJOYW1lIjogIiIsCgkJInRheFJlY29yZHMiOiAiIiwKCQkic2FsZXNCYW5rIjogIiIsCgkJImxlbW9uTWFya2V0IjogIuWxseS4nOa2pumAmuS6jOaJi+i9puW4guWcuuacjeWKoeaciemZkOWFrOWPuCIsCgkJImludm9pY2VUeXBlIjogIjE1IiwKCQkibGltaXRQZW9wbGUiOiAiIiwKCQkibWFjaGluZU5vIjogIjU4OTkxNjQyNDc3MiIsCgkJInB1cmNoYXNlckFkZHJlc3NQaG9uZSI6ICIiLAoJCSJzdGF0ZSI6ICIwIiwKCQkiaW52b2ljZU5vIjogIjAwMzI3OTYyIiwKCQkidmVoaWNsZVR5cGUiOiAi5bCP5Z6L5pmu6YCa5a6i6L2mIiwKCQkiZW5naW5lTm8iOiAiIiwKCQkiaW5zcGVjdGlvbk51bSI6ICIiLAoJCSJtYWNoaW5lQ29kZSI6ICIiLAoJCSJidXNpbmVzc1VuaXRQaG9uZSI6ICIiLAoJCSJzZWxsZXJQaG9uZSI6ICIxNTkxMDA4NDM4NCIsCgkJInplcm9UYXhSYXRlU2lnbiI6ICIiLAoJCSJpbnZvaWNlQ29kZSI6ICIwMzcwMDIxMDA0MTciLAoJCSJjZXJ0aWZpY2F0ZU5vIjogIiIsCgkJInB1cmNoYXNlck5hbWUiOiAiIiwKCQkiY2hlY2tDb2RlIjogIiIsCgkJImJpbGxpbmdEYXRlIjogIjIwMjMtMDMtMTciLAoJCSJ0b3RhbEFtb3VudCI6ICIiLAoJCSJ2ZWhpY2xlTm8iOiAiTFNHVUE4Mkw3TUcwODM4NzAiLAoJCSJzYWxlc0FkZHJlc3NQaG9uZSI6ICIiLAoJCSJidXllclBob25lIjogIjE1Njg4ODg1MjA1IiwKCQkic2FsZXNOYW1lIjogIiIsCgkJInB1cmNoYXNlclRheE5vIjogIiIsCgkJInNlbGxlclVuaXRDb2RlT3JJZE5vIjogIjkxNTMwMTAyTUE3SzcyWVQ1QyIsCgkJImNhcnJpZXJUYXhObyI6ICIiLAoJCSJ0YXhBdXRob3JpdHlOYW1lIjogIiIsCgkJImluc3BlY3Rpb25MaXN0Tm8iOiAiIiwKCQkiYW1vdW50VGF4IjogIiIsCgkJIm9yaWdpblBsYWNlIjogIiIsCgkJImNlcnRpZmljYXRlIjogIiIsCgkJImJ1eWVySUROdW0iOiAiIiwKCQkicGF5bWVudFZvdWNoZXJObyI6ICIiLAoJCSJsZW1vbk1hcmtldEFkZHJlc3MiOiAi5bGx5Lic55yB5rWO5Y2X5biC5rWO5YyX5byA5Y+R5Yy65Lit5bCP5LyB5Lia5a215YyW5ZutIiwKCQkiZmFjdG9yeU1vZGVsIjogIuWIq+WFi+eJjFNHTTY1MjFVQkExIiwKCQkiYnV5ZXJVbml0T3JJbmRpdmlkdWFsIjogIua1juWNl+WMl+aegeaYn+axvei9puacjeWKoeaciemZkOWFrOWPuCIsCgkJImludm9pY2VOdW1iZXIiOiAiMDAzMjc5NjIiLAoJCSJ0b2xsU2lnbiI6ICIwNyIsCgkJInRheEJ1cmVhdUNvZGUiOiAiIiwKCQkidG9ubmFnZSI6ICIiLAoJCSJ0YXhBdXRob3JpdHlObyI6ICIiLAoJCSJjb21wYW55IjogIkJJR0IiLAoJCSJsZW1vbk1hcmtldFBob25lIjogIjEzODU0MTkzMDI1IiwKCQkicHVyY2hhc2VyQmFuayI6ICIiLAoJCSJhZG1pbmlzdHJhdGl2ZURpdmlzaW9uTmFtZSI6ICIiLAoJCSJwYXNzZW5nZXJzTGltaXRlZCI6ICIiLAoJCSJidXllclVuaXRPckluZGl2aWR1YWxBZGRyZXNzIjogIuWxseS4nOecgea1juWNl+W4guWkqeahpeWMuuWMl+WFs+WMl+i3rzblj7fmuZblhYnlsbHoibLlrrblm600LTMtMTAyIiwKCQkiaW52b2ljZUxpbmVMaXN0IjogW3sKCQkJInVuaXRQcmljZSI6ICIiLAoJCQkicm93Tm8iOiAiMSIsCgkJCSJhbW91bnQiOiAiIiwKCQkJInNwZWNpZmljYXRpb25Nb2RlbCI6ICIiLAoJCQkicXVhbnRpdHkiOiAiIiwKCQkJInRheCI6ICIiLAoJCQkidHlwZSI6ICIiLAoJCQkidW5pdCI6ICIiLAoJCQkibGljZW5zZVBsYXRlTnVtIjogIiIsCgkJCSJjdXJyZW50RGF0ZUVuZCI6ICIiLAoJCQkiY29tbW9kaXR5Q29kZSI6ICIiLAoJCQkiY3VycmVudERhdGVTdGFydCI6ICIiLAoJCQkiY29tbW9kaXR5TmFtZSI6ICIiCgkJfV0sCgkJImxlbW9uTWFya2V0QmFua0FuZEFjY291bnQiOiAi5Lit5Zu96ZO26KGM5rWO6Ziz5pSv6KGM6JCl5Lia6YOoMjMyNTQwNzQ2NjQ5IiwKCQkic2FsZXNUYXhObyI6ICIiLAoJCSJzZWxsZXJVbml0T3JJbmRpdmlkdWFsQWRkcmVzcyI6ICLkupHljZfnnIHmmIbmmI7luILkupTljY7ljLrpu5Hmnpfpk7rooZfpgZPlip7kuovlpITkurrmsJHopb/ot683MjDlj7dN5qCLTS0xMOWPtyIsCgkJImJ1c2luZXNzVW5pdEJhbmtBbmRBY2NvdW50IjogIiIsCgkJInZlaGljbGVBZG1pbk9mZmljZSI6ICLmtY7ljZfluIIiLAoJCSJhbW91bnRUYXhDTiI6ICIiLAoJCSJyZWdpc3RyYXRpb25ObyI6ICIzNzAwMzc1ODUzNTciLAoJCSJwcm9kdWN0UGxhY2UiOiAiIiwKCQkicmVtYXJrcyI6ICIiLAoJCSJ0YXhCdXJlYXVOYW1lIjogIiIKCX0sCgkibWVzc2FnZSI6ICJzdWNjZXNzIgp9";
String result = Base64Encoding.decodeToString(base64);
@ -216,7 +213,6 @@ public class SDNYMainProcessController extends AbstractController {
if (!checkInvoiceResult.containsKey("cyjg")) {
checkInvoiceResult.put("invoiceNo", checkInvoiceResult.getString("invoiceNumber"));
checkInvoiceResult.put("company", company);
log.info("返回给影像系统的结果为:{}", checkInvoiceResult);
signSaveInvoiceInfoService.saveQueryInvoiceResult(checkInvoiceResult, userid, "1", dbName);
}
@ -234,7 +230,6 @@ public class SDNYMainProcessController extends AbstractController {
if (insert > 0) {
checkInvoiceResult.put("invoiceNo", checkInvoiceResult.getString("invoiceNumber"));
checkInvoiceResult.put("company", company);
checkInvoiceResult.put("message", "入库成功");
log.info("返回给影像系统的结果为:{}", checkInvoiceResult);
}
@ -391,30 +386,22 @@ public class SDNYMainProcessController extends AbstractController {
/**
* 查验发票
*/
@PostMapping("/sn/syncInvoiceInfo")
@PostMapping("/syncInvoiceInfo")
@ResponseBody
@SysLog("同步发票信息")
public ResponseEntity<String> syncInvoiceInfo(@RequestBody SNRequestObject snRequestObject) {
log.info("影像系统同步数据:{}", JSONObject.toJSONString(snRequestObject));
String userid = "101833";
String dbName = "business";
String company = "BIGB";
String taxNo = "9111112222333344DD";
String orgCode = "1010";
// // 入参统一在入口处理
// String userid = getLoginName();
// String dbName = getUserInfo().getDbName();
// String company = getUserInfo().getCompany();
// List<TaxOrgCode> orgCodes = getUserInfo().getOrgCodes();
// String orgCode = orgCodes.get(0).getOrgCode();
// List<String> gfshAll = UserInfoUtil.getGfshAll(getUserInfo().getOrg());
// String gfsh = "";
// if (gfshAll.size() > 0) {
// gfsh = gfshAll.get(0);
// }
// 入参统一在入口处理
String orgCode = snRequestObject.getCompCode();
DynamicContextHolder.push(DbConstant.BASICS_READ);
SysDeptEntity orgByCompCode = sysDeptDao.getOrgByCompCode(orgCode);
log.info("查询的组织信息为:{}",JSONObject.toJSONString(orgByCompCode));
String company = orgByCompCode.getCompany();
String taxno = orgByCompCode.getTaxno();
String taxname = orgByCompCode.getTaxname();
String result = "";
@ -428,6 +415,7 @@ public class SDNYMainProcessController extends AbstractController {
TDxInvoiceReimburse reimburse = new TDxInvoiceReimburse();
reimburse.setImageId(imageId);
reimburse.setCompCode(compCode);
reimburse.setGfName(taxname);
SNSAPObject object = new SNSAPObject();
object.setSYSID("FPXT");
@ -439,20 +427,27 @@ public class SDNYMainProcessController extends AbstractController {
object.setZFILED2("");
object.setZFILED3("");
object.setZFILED4("");
// List<GsClient> gsClients = gsClientMapper.selectByGsdm(orgCode);
// if(gsClients != null && gsClients.size() > 0) {
// object.setZFILED5(gsClients.get(0).getClient());
// }else{
// object.setZFILED5(environment);
// }
object.setZFILED5(environment);
DynamicContextHolder.push(DbConstant.BASICS_READ);
List<GsClient> gsClients = gsClientMapper.selectByGsdm(orgCode);
if(gsClients != null && gsClients.size() > 0) {
object.setZFILED5(gsClients.get(0).getClient());
}else{
object.setZFILED5(environment);
}
// object.setZFILED5(environment);
List<SAPInvoiceInfo> sapInvoiceInfos = new ArrayList<>();
if (invoiceInfoList != null && invoiceInfoList.size() > 0) {
for (SNInvoice invoice : invoiceInfoList) {
String fplxdm = "";
String snFplx = "";
result = snPushCheckRecordService.updateInvoicePoll(company, taxNo, reimburse, invoice, fplxdm, imageId, compCode);
if (invoice.getPurchaserTaxNo() == null || "".equals(invoice.getPurchaserTaxNo())){
invoice.setPurchaserTaxNo(taxno);
}
if (invoice.getPurchaserName() == null || "".equals(invoice.getPurchaserName())){
invoice.setPurchaserName(taxname);
}
result = snPushCheckRecordService.updateInvoicePoll(company, taxno, reimburse, invoice, fplxdm, imageId, compCode);
//价税分离判断
if (!"ok".equals(result) && !"0000".equals(result)) {
@ -487,8 +482,10 @@ public class SDNYMainProcessController extends AbstractController {
//删除对应的影像号
QueryWrapper<BaseTDxRecordInvoice> recordWrapper = new QueryWrapper<>();
recordWrapper.eq("image_id", imageId);
BaseTDxRecordInvoice baseTDxRecordInvoice = baseTDxRecordInvoiceDao.selectOne(recordWrapper);
if(baseTDxRecordInvoice != null){
// BaseTDxRecordInvoice baseTDxRecordInvoice = baseTDxRecordInvoiceDao.selectOne(recordWrapper);
List<BaseTDxRecordInvoice> baseTDxRecordInvoices = baseTDxRecordInvoiceDao.selectList(recordWrapper);
// if(baseTDxRecordInvoice != null){
if(baseTDxRecordInvoices != null && baseTDxRecordInvoices.size() > 0){
log.info("TDxRecordInvoice表中匹配到数据");
BaseTDxRecordInvoice recordInvoice = new BaseTDxRecordInvoice();
recordInvoice.setImageId("");
@ -503,8 +500,9 @@ public class SDNYMainProcessController extends AbstractController {
QueryWrapper<TDxInvoiceReimburse> reimburseWrapper = new QueryWrapper<>();
reimburseWrapper.eq("image_id", imageId);
TDxInvoiceReimburse reimburse1 = mixedSignatureDao.selectOne(reimburseWrapper);
if(reimburse1 != null){
// TDxInvoiceReimburse reimburse1 = mixedSignatureDao.selectOne(reimburseWrapper);
List<TDxInvoiceReimburse> tDxInvoiceReimburses = mixedSignatureDao.selectList(reimburseWrapper);
if(tDxInvoiceReimburses != null && tDxInvoiceReimburses.size() > 0){
log.info("TDxInvoiceReimburse表中匹配到数据");
TDxInvoiceReimburse tDxInvoiceReimburse = new TDxInvoiceReimburse();
tDxInvoiceReimburse.setImageId("");

@ -165,11 +165,17 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
}
recordInvoice.setXfTaxNo(xfsh);
recordInvoice.setGfTaxNo(gfsbh);
recordInvoice.setGfName(gfmc);
// recordInvoice.setGfTaxNo(gfsbh);
// recordInvoice.setGfName(gfmc);
recordInvoice.setRzlx("5");
recordInvoice.setYqsqStatus("1");
recordInvoice.setYqCurrentPeriod(current.getCurrentTaxPeriod());
if(current != null) {
recordInvoice.setYqCurrentPeriod(current.getCurrentTaxPeriod());
}else{
SimpleDateFormat format = new SimpleDateFormat("yyyyMM");
String month = format.format(new Date());
recordInvoice.setYqCurrentPeriod(month);
}
recordInvoice.setCreateDate(new Date());
recordInvoice.setYqsqDate(new Date());
recordInvoice.setSourceSystem("2");
@ -200,6 +206,8 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
BaseTDxRecordInvoice recordInvoice = new BaseTDxRecordInvoice();
recordInvoice.setImageId(imageId);
recordInvoice.setCompCode(compCode);
recordInvoice.setGfTaxNo(snInvoice.getPurchaserTaxNo());
recordInvoice.setGfName(snInvoice.getPurchaserName());
update = baseTDxRecordInvoiceDao.update(recordInvoice, recordWrapper);
@ -309,7 +317,7 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
invoiceType = invoiceData.get("fpzl").toString();
if ("22".equals(invoiceType)) {
invoiceType = "33";
invoiceType = "32";
}
if ("21".equals(invoiceType)) {
invoiceType = "31";
@ -477,6 +485,7 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
snDetailMap.put("commodityName", detail.getString("hwmc"));
snDetailMap.put("specificationModel", detail.getString("ggxh"));
snDetailMap.put("unit", detail.getString("jldw"));
snDetailMap.put("detailNo",detail.getString("mxbh"));
String quantity = detail.getString("spsl");
// if (quantity.length() > 3) {
// int index = quantity.indexOf(".");
@ -676,7 +685,9 @@ public class SNPushCheckRecordService extends AbstractServiceAdapter {
reimburse.setXfTaxNo(invoice.getSalesTaxNo());
reimburse.setXfAddressAndPhone(invoice.getSalesAddressPhone());
reimburse.setXfBankAndNo(invoice.getSalesBank());
reimburse.setSelectId(UUID.randomUUID().toString().replace("-", ""));
String uuid = UUID.randomUUID().toString().replace("-", "");
log.info("uuid={}",uuid);
reimburse.setSelectId(uuid);
reimburse.setTaxRate(invoice.getTaxRate());
reimburse.setTaxCode(getTaxCode(invoice.getTaxRate()));

@ -127,6 +127,7 @@ public class SignSaveInvoiceInfoServiceImpl extends MpBaseServiceImpl<SignRecord
boolean deleteDetail =
signInvoiceDetailService.deleteDetail(recordInvoice.getUuid(), dbName);
if (deleteDetail) {
log.info("保存明细表的字段和字段值为{}",recordInvoiceDetail);
signInvoiceDetailService.saveInvoiceDetail(recordInvoiceDetail, dbName);
}
}
@ -300,24 +301,26 @@ public class SignSaveInvoiceInfoServiceImpl extends MpBaseServiceImpl<SignRecord
invoiceDetail.setInvoiceNo(invoiceNo);
}
invoiceDetail.setDetailNo(invoiceDetailQuery.getString("detailNo"));
invoiceDetail.setGoodsName(invoiceDetailQuery.getString("goodsName"));
// invoiceDetail.setGoodsName(invoiceDetailQuery.getString("goodsName"));
invoiceDetail.setModel(invoiceDetailQuery.getString("specificationModel"));
invoiceDetail.setUnit(invoiceDetailQuery.getString("unit"));
invoiceDetail.setNum(invoiceDetailQuery.getString("num"));
// invoiceDetail.setNum(invoiceDetailQuery.getString("num"));
invoiceDetail.setNum(invoiceDetailQuery.getString("quantity"));
invoiceDetail.setGoodsName(invoiceDetailQuery.getString("commodityName"));
invoiceDetail.setUnitPrice(invoiceDetailQuery.getString("unitPrice"));
invoiceDetail.setDetailAmount(invoiceDetailQuery.getString("detailAmount"));
invoiceDetail.setDetailAmount(invoiceDetailQuery.getString("amount"));
invoiceDetail.setTaxRate(invoiceDetailQuery.getString("taxRate"));
if(invoiceDetailQuery.getString("taxRate") != null){
invoiceDetail.setTaxCode(getZSM(invoiceDetailQuery.getString("taxRate")));
}
invoiceDetail.setTaxAmount(invoiceDetailQuery.getString("taxAmount"));
invoiceDetail.setTaxAmount(invoiceDetailQuery.getString("tax"));
if (FplxEnum.TXF.getFplxDm().equals(invoiceType)) {
// 通行费发票
invoiceDetail.setCph(invoiceDetailQuery.getString("cph"));
invoiceDetail.setLx(invoiceDetailQuery.getString("lx"));
invoiceDetail.setTxrqq(invoiceDetailQuery.getString("txrqq"));
invoiceDetail.setTxrqz(invoiceDetailQuery.getString("txrqz"));
invoiceDetail.setCph(invoiceDetailQuery.getString("licensePlateNum"));
invoiceDetail.setLx(invoiceDetailQuery.getString("type"));
invoiceDetail.setTxrqq(invoiceDetailQuery.getString("currentDateStart"));
invoiceDetail.setTxrqz(invoiceDetailQuery.getString("currentDateEnd"));
}
invoiceDetailList.add(invoiceDetail);
}

@ -325,16 +325,14 @@
invoice_no invoiceNo,
DATE_FORMAT(invoice_date,'%Y-%m-%d') invoiceDate,
DATE_FORMAT(create_date,'%Y-%m-%d') createDate,
total_amount invoiceAmount,
invoice_amount invoiceAmount,
qs_status qszt,
DATE_FORMAT(qs_date,'%Y-%m-%d') qsrq,
qs_type qsfs,
qs_name qsr,
source_system sourceSystem,
uuid,
select_id selectId,
scan_id scanId,
business_document_number businessDocumentNumber,
account_period accountPeriod,
image_id imageNumber,
posting_time postingTime,
@ -342,22 +340,22 @@
bzdh bzdh,
sn_voucher_number snVoucherNumber
FROM
t_dx_invoice_reimburse
t_dx_record_invoice
where invoice_type in
('91','94','95','00','97','98','101','102','103','99')
<if test="cjksyf != null and cjksyf!= '' and cjjsyf != null and cjjsyf != ''">
AND create_date between #{cjksyf} and #{cjjsyf}
</if>
AND gf_tax_no in
<foreach collection="gfsh" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
<if test="kpksrq != null and kpksrq!= '' and kpjsrq != null and kpjsrq != ''">
AND invoice_date between #{kpksrq} and #{kpjsrq}
</if>
<if test="keyWord != null and keyWord != '' and keyWord != 'null' ">
AND CONCAT(IFNULL(invoice_code,''),IFNULL(invoice_no,'')) like CONCAT('%',#{keyWord},'%')
</if>
AND gf_tax_no in
<foreach collection="gfsh" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
<if test="invoiceType != null and invoiceType != '' and invoiceType != 'null' and invoiceType != '999' ">
AND invoice_type = #{invoiceType}
</if>

@ -1628,8 +1628,8 @@
</foreach>
</if>
and invoice_status != 0
and DATE_FORMAT( status_update_date, '%Y-%m' ) = DATE_FORMAT( now( ), '%Y-%m' )
</select>
<!-- and DATE_FORMAT( status_update_date, '%Y-%m' ) = DATE_FORMAT( now( ), '%Y-%m' )-->
<!-- 普票跨年度发票 -->
<select id="getInvoiceTaskRemindingPpknd" resultMap="indexInvoiceTaskRemindingMap"
databaseId="mysql">
@ -1671,9 +1671,8 @@
and invoice_status != '0'
and (invoice_type in('01','03','08','14','31','283','161','183','185') or (invoice_type ='32' and lq_tdyslxDm='08'))
and auth_status = '4'
and date_format(rzh_date,'%Y-%m') = date_format(now(),'%Y-%m')
</select>
<!-- and date_format(rzh_date,'%Y-%m') = date_format(now(),'%Y-%m')-->
<!-- 签收异常发票 -->
<select id="getInvoiceTaskRemindingQsyc" resultMap="indexInvoiceTaskRemindingMap"
databaseId="mysql">
@ -1692,8 +1691,9 @@
</if>
and invoice_status != '0'
and qs_status = '1'
and date_format(qs_date,'%Y-%m') = date_format(now(),'%Y-%m')
</select>
<!--&#45;&#45; and date_format(qs_date,'%Y-%m') = date_format(now(),'%Y-%m')-->
<!-- 逾期发票 -->

@ -904,6 +904,9 @@ public class SignFpqsServiceImpl extends MpBaseServiceImpl<SignRecordInvoiceDao,
@Override
public String smyqsQsfp(Map<String, String> pramsMapAll, UserInfo userInfo) {
log.info("传入的参数为:{}",pramsMapAll);
JSONObject json;
String company = pramsMapAll.get("company");
String menuId = pramsMapAll.get("menuId");
@ -961,7 +964,7 @@ public class SignFpqsServiceImpl extends MpBaseServiceImpl<SignRecordInvoiceDao,
tDxInvoice.setTaxAmount(new BigDecimal("0.00"));
}
if (pramsMap.get("invoiceAmount") != null && !"".equals(pramsMap.get("invoiceAmount"))) {
log.info("invoiceAmount={}",pramsMap.get("invoiceAmount"));
tDxInvoice.setInvoiceAmount(new BigDecimal(pramsMap.get("invoiceAmount")));
} else {
tDxInvoice.setInvoiceAmount(new BigDecimal("0.00"));
@ -3445,7 +3448,7 @@ public class SignFpqsServiceImpl extends MpBaseServiceImpl<SignRecordInvoiceDao,
List<QsExcelEntity> excelList = selectWqsfp(pramsMap);
log.info("excelList {}",excelList);
ExcelWriter excelWriter = null;
if(excelList != null){
if(excelList != null && excelList.size() > 0){
// String fileName = "签收数据导出" + ".xlsx";
ByteArrayOutputStream outputStream = null;
try {
@ -3474,6 +3477,11 @@ public class SignFpqsServiceImpl extends MpBaseServiceImpl<SignRecordInvoiceDao,
}
}
}
}else{
JSONObject json = new JSONObject();
json.put("code", "9999");
json.put("msg", "发送的发票信息在公司发票信息库不存在,请检查签收信息是否正确!");
return super.responseResult(json);
}
JSONObject json = new JSONObject();
json.put("code", "9999");

Loading…
Cancel
Save