diff --git a/order-management-base-service/pom.xml b/order-management-base-service/pom.xml
index ee0b1755..bd6b4ec0 100644
--- a/order-management-base-service/pom.xml
+++ b/order-management-base-service/pom.xml
@@ -248,7 +248,7 @@
com.xuxueli
xxl-job-core
- 1.9.1
+ 2.4.0
diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/config/BaseXxlJobConfig.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/config/BaseXxlJobConfig.java
index fde53335..cdb1aba6 100644
--- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/config/BaseXxlJobConfig.java
+++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/config/BaseXxlJobConfig.java
@@ -1,6 +1,7 @@
package com.dxhy.order.baseservice.config;
import com.xxl.job.core.executor.XxlJobExecutor;
+import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
@@ -28,6 +29,9 @@ public class BaseXxlJobConfig {
@Value("${xxl.job.executor.ip}")
private String ip;
+ @Value("${xxl.job.executor.address}")
+ private String address;
+
@Value("${xxl.job.executor.port}")
private int port;
@@ -44,9 +48,10 @@ public class BaseXxlJobConfig {
@Bean(initMethod = "start", destroyMethod = "destroy")
public XxlJobExecutor BaseXxlJobExecutor() {
log.info(">>>>>>>>>>> base xxl-job config init.");
- XxlJobExecutor xxlJobExecutor = new XxlJobExecutor();
+ XxlJobSpringExecutor xxlJobExecutor = new XxlJobSpringExecutor();
xxlJobExecutor.setAdminAddresses(adminAddresses);
- xxlJobExecutor.setAppName(appName);
+ xxlJobExecutor.setAppname(appName);
+ xxlJobExecutor.setAddress(address);
xxlJobExecutor.setIp(ip);
xxlJobExecutor.setPort(port);
xxlJobExecutor.setAccessToken(accessToken);
diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/constant/OrderEnum.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/constant/OrderEnum.java
new file mode 100644
index 00000000..07d6efca
--- /dev/null
+++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/constant/OrderEnum.java
@@ -0,0 +1,257 @@
+package com.dxhy.order.baseservice.constant;
+
+/**
+ * 订单枚举类
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-03-15
+ */
+public enum OrderEnum {
+ /**
+ * 红字信息表下载状态(0:初始化;1:下载中;2:下载完成;3:下载失败)
+ */
+ SPECIAL_INVOICE_DOWNLOAD_TYPE_0("0", "初始化"),
+ SPECIAL_INVOICE_DOWNLOAD_TYPE_1("1", "下载中"),
+ SPECIAL_INVOICE_DOWNLOAD_TYPE_2("2", "下载完成"),
+ SPECIAL_INVOICE_DOWNLOAD_TYPE_3("3", "下载失败"),
+
+ /**
+ * 订单对外开票接口:拆分方式 默认0
+ */
+ INTERFACE_GENERATE_INVOICE_CFFS_0("0","按业务系统配置的拆分规则进行拆分"),
+ INTERFACE_GENERATE_INVOICE_CFFS_1("1","按商品固定数量拆分"),
+
+ /**
+ * 数据来源
+ */
+ DATA_SOURCE_0("0", "集团共享"),
+ DATA_SOURCE_1("1", "手工创建"),
+ DATA_SOURCE_2("2", "模板导入"),
+ DATA_SOURCE_3("3", "采集下级"),
+ DATA_SOURCE_4("4", "自动归集"),
+ DATA_SOURCE_5("5", "接口同步"),
+
+ /**
+ * 特殊票种(订单服务)
+ */
+ ORDER_TSPZ_0("0", "其他"),
+ ORDER_TSPZ_1("1", "成品油"),
+ ORDER_TSPZ_2("2", "农产品收购"),
+ ORDER_TSPZ_3("3", "机动车"),
+ ORDER_TSPZ_4("4","矿产品"),
+ ORDER_TSPZ_5("5","农产品收购(数电)"),
+ ORDER_TSPZ_6("6","不动产经营租赁服务"),
+ ORDER_TSPZ_7("7","不动产销售"),
+ ORDER_TSPZ_8("8","货物运输服务"),
+ ORDER_TSPZ_9("9","建筑服务"),
+
+ /**
+ * 特殊票种(税控服务)
+ * “00”不是
+ * “01”农产品销售
+ * “02”农产品收购
+ * “06”抵扣通行费
+ * “07”其它通行费
+ * “08”成品油销售
+ * “09”机动车专票
+ */
+ SK_TSPZ_00("00", "不是特殊票种"),
+ SK_TSPZ_01("01", "农产品销售"),
+ SK_TSPZ_02("02", "农产品收购"),
+ SK_TSPZ_06("06", "抵扣通行费"),
+ SK_TSPZ_07("07", "其它通行费"),
+ SK_TSPZ_08("08", "成品油销售"),
+ SK_TSPZ_09("09", "机动车专票"),
+
+ /**
+ * 订单批量导入excel模板中sheet页名称
+ */
+ ORDER_BATCH_IMPORT_QD_SHEET_0("0","数电农产品收购"),
+ ORDER_BATCH_IMPORT_QD_SHEET_1("1","货物运输服务"),
+ ORDER_BATCH_IMPORT_QD_SHEET_2("2","不动产销售"),
+ ORDER_BATCH_IMPORT_QD_SHEET_3("3","不动产经营租赁"),
+ ORDER_BATCH_IMPORT_QD_SHEET_4("4","建筑服务"),
+ ORDER_BATCH_IMPORT_HISTORY_SHEET_1("1","增值税专用发票"),
+ ORDER_BATCH_IMPORT_HISTORY_SHEET_2("2","增值税普通发票"),
+ ORDER_BATCH_IMPORT_HISTORY_SHEET_3("3","增值税电子普通发票"),
+ ORDER_BATCH_IMPORT_HISTORY_SHEET_4("4","增值税电子专用发票"),
+
+ /**
+ * 订单批量导入excel模板中特殊票种
+ */
+ ORDER_BATCH_IMPORT_TSPZ_0("0", "否"),
+ ORDER_BATCH_IMPORT_TSPZ_1("1", "成品油发票"),
+ ORDER_BATCH_IMPORT_TSPZ_2("2", "机动车发票"),
+ ORDER_BATCH_IMPORT_TSPZ_3("3", "不动产经营租赁服务"),
+ ORDER_BATCH_IMPORT_TSPZ_4("4", "不动产销售"),
+ ORDER_BATCH_IMPORT_TSPZ_5("5", "货物运输服务"),
+ ORDER_BATCH_IMPORT_TSPZ_6("6", "建筑服务"),
+
+ /**
+ * 订单暂停开票提示文案
+ */
+ ORDER_INVOICE_ERROR_1("202008", "该开票设备已被设置为暂停开票,如需恢复开票,请联系运维人员处理,暂停原因:%s"),
+
+ /**
+ * 二手车开票方类型
+ * (1经营 2拍卖 3市场)
+ */
+ ESC_KPFLX_1("1", "经营"),
+ ESC_KPFLX_2("2", "拍卖"),
+ ESC_KPFLX_3("3", "市场"),
+ ESC_KPFLX_4("d", "以上三者都有"),
+
+ /**
+ * 二手车企业类型 0:非二手车企业1:经营单位 2:拍卖单位 3:二手车市场
+ */
+ ESC_QYLX_0("0", "非二手车企业"),
+ ESC_QYLX_1("1", "二手车经营单位"),
+ ESC_QYLX_2("2", "二手车拍卖单位"),
+ ESC_QYLX_3("3", "二手车市场"),
+ ESC_QYLX_4("d", "以上三者都有"),
+
+ /**
+ * 订单开票量统计类型
+ */
+ DDKPLTJ_TJLX_0("0","本月"),
+ DDKPLTJ_TJLX_1("1","本季度"),
+ DDKPLTJ_TJLX_2("2","累计"),
+
+ /**
+ * 数电设备类型(0:纯数电设备;1:混合设备使用;2:非数电设备;3:未配置设备)
+ */
+ /*SKSB_TYPE_0("0","纯数电设备"),
+ SKSB_TYPE_1("1","混合设备使用"),
+ SKSB_TYPE_2("2","非数电设备"),
+ SKSB_TYPE_3("3","未配置设备"),*/
+
+ /**
+ * 数电-特定要素
+ */
+ ORDER_QD_TDYS_00("00", "无"),
+ ORDER_QD_TDYS_01("01", "成品油发票"),
+ ORDER_QD_TDYS_02("02", "稀土发票"),
+ ORDER_QD_TDYS_03("03", "建筑服务发票"),
+ ORDER_QD_TDYS_04("04", "货物运输服务发票"),
+ ORDER_QD_TDYS_05("05", "不动产销售服务发票"),
+ ORDER_QD_TDYS_06("06", "不动产租赁服务发票"),
+ ORDER_QD_TDYS_07("07", "代收车船税"),
+ ORDER_QD_TDYS_08("08", "通行费"),
+ ORDER_QD_TDYS_09("09", "旅客运输服务发票"),
+ ORDER_QD_TDYS_10("10", "医疗服务(住院)发票"),
+ ORDER_QD_TDYS_11("11", "医疗服务(门诊)发票"),
+ ORDER_QD_TDYS_12("12", "自产农产品销售发票"),
+ ORDER_QD_TDYS_13("13", "拖拉机和联合收割机发票"),
+ ORDER_QD_TDYS_14("14", "机动车"),
+ ORDER_QD_TDYS_15("15", "二手车"),
+ ORDER_QD_TDYS_16("16", "农产品收购发票"),
+ ORDER_QD_TDYS_17("17", "光伏收购发票"),
+ ORDER_QD_TDYS_18("18", "卷烟发票"),
+
+ /**
+ * 数电-差额征税类型代码
+ */
+ ORDER_QD_CEZSLXDM_01("01", "差额开票"),
+ ORDER_QD_CEZSLXDM_02("02", "全额开票"),
+
+ /**
+ * 数电-收购发票类型代码
+ */
+ ORDER_QD_SGFPLXDM_01("01", "农产品收购发票"),
+ ORDER_QD_SGFPLXDM_02("02", "光伏收购发票"),
+ ORDER_QD_SGFPLXDM_03("03", "二手车收购发票"),
+
+ /**
+ * 数电-出口业务适用政策代码
+ */
+ ORDER_QD_CKYWSYZCDM_01("01", "退税政策"),
+ ORDER_QD_CKYWSYZCDM_02("02", "免税政策"),
+ ORDER_QD_CKYWSYZCDM_03("03", "征税政策"),
+
+ /**
+ * 数电-增值税即征即退代码
+ */
+ ORDER_QD_ZZSJZJTDM_01("01", "软件产品发票"),
+ ORDER_QD_ZZSJZJTDM_02("02", "资源综合利用产品发票"),
+ ORDER_QD_ZZSJZJTDM_03("03", "管道运输服务发票"),
+ ORDER_QD_ZZSJZJTDM_04("04", "有形动产融资租赁服务"),
+ ORDER_QD_ZZSJZJTDM_05("05", "有形动产融资性售后回租服务发票"),
+ ORDER_QD_ZZSJZJTDM_06("06", "新型墙体材料发票"),
+ ORDER_QD_ZZSJZJTDM_07("07", "风力发电产品发票"),
+ ORDER_QD_ZZSJZJTDM_08("08", "光伏发电产品发票"),
+ ORDER_QD_ZZSJZJTDM_09("09", "动漫软件产品发票"),
+ ORDER_QD_ZZSJZJTDM_10("10", "飞机维修劳务发票"),
+ ORDER_QD_ZZSJZJTDM_11("11", "黄金发票"),
+ ORDER_QD_ZZSJZJTDM_12("12", "铂金发票"),
+
+ /**
+ * 数电-结算方式
+ */
+ ORDER_QD_JSFS_01("01", "现金"),
+ ORDER_QD_JSFS_02("02", "银行转账"),
+ ORDER_QD_JSFS_03("03", "票据"),
+ ORDER_QD_JSFS_04("04", "第三方支付"),
+ ORDER_QD_JSFS_05("05", "预付卡"),
+ ORDER_QD_JSFS_99("99", "其他"),
+
+ /**
+ * 数电发票业务开通状态
+ */
+ ORDER_QD_FPYWKTZT_0("0", "已开通"),
+ ORDER_QD_FPYWKTZT_1("1", "未开通"),
+
+ /**
+ * RPA企业开票登录状态,用于判断开票数据是否可重试
+ */
+ ORDER_QD_RPA_FPKJ_1101("1101", "登录状态失效"),
+ ORDER_QD_RPA_FPKJ_1102("1102", "需二次认证"),
+
+ /**
+ * 数电红字确认单 用户角色类型 (0:销方,1:购方)
+ */
+ ORDER_QD_HZQRD_YHJSLX_0("0", "销方"),
+ ORDER_QD_HZQRD_YHJSLX_1("1", "购方"),
+
+ /**
+ * 数电货物运输运输工具种类
+ */
+ ORDER_QD_HWYS_YSGJZL_0("0","铁路运输"),
+ ORDER_QD_HWYS_YSGJZL_1("1","公路运输"),
+ ORDER_QD_HWYS_YSGJZL_2("2","水路运输"),
+ ORDER_QD_HWYS_YSGJZL_3("3","航空运输"),
+ ORDER_QD_HWYS_YSGJZL_4("4","管道运输"),
+ ORDER_QD_HWYS_YSGJZL_5("6","其他运输工具"),
+
+ ;
+ /**
+ * key
+ */
+ private final String key;
+
+ /**
+ * 值
+ */
+ private final String value;
+
+ public String getKey() {
+ return key;
+ }
+
+ public String getValue() {
+ return value;
+ }
+
+ OrderEnum(String key, String value) {
+ this.key = key;
+ this.value = value;
+ }
+
+ public static OrderEnum getCodeValue(String key) {
+
+ for (OrderEnum item : values()) {
+ if (item.getKey().equals(key)) {
+ return item;
+ }
+ }
+ return null;
+ }
+}
diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/job/YpyjTask.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/job/YpyjTask.java
index 78cb38c7..97772c26 100644
--- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/job/YpyjTask.java
+++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/job/YpyjTask.java
@@ -19,8 +19,9 @@ import com.dxhy.order.baseservice.module.thirdservice.itaxmsg.service.ItaxMsgSer
import com.dxhy.order.baseservice.module.thirdservice.simsback.service.SimsBackService;
import com.dxhy.order.baseservice.utils.HttpInvoiceRequestUtil;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+//import com.xxl.job.core.handler.IJobHandler;
+//import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -43,8 +44,8 @@ import java.util.stream.Collectors;
@SuppressWarnings("AlibabaMethodTooLong")
@Slf4j
@Component
-@JobHandler(value = "/ypyjTask")
-public class YpyjTask extends IJobHandler {
+
+public class YpyjTask {
private static final String LOGGER_MSG = "(余票预警)";
@Resource
private YpWarningService ypWarningService;
@@ -57,7 +58,8 @@ public class YpyjTask extends IJobHandler {
@Resource
private BaseServiceConfig baseServiceConfig;
- @Override
+ //@Override
+ @XxlJob(value = "/ypyjTask")
public ReturnT execute(String s) {
try {
@@ -188,7 +190,7 @@ public class YpyjTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
return ReturnT.SUCCESS;
}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/OrderInfoQdTdyw.java b/order-management-common/src/main/java/com/dxhy/order/model/OrderInfoQdTdyw.java
new file mode 100644
index 00000000..9e7d5c76
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/OrderInfoQdTdyw.java
@@ -0,0 +1,34 @@
+package com.dxhy.order.model;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class OrderInfoQdTdyw implements Serializable {
+ private static final long serialVersionUID = 3412872591093242393L;
+ private String id;
+ private String orderInfoQdId;
+ private String xhfNsrsbh;
+ private String yshwxh;
+ private String ysqyd;
+ private String ysddd;
+ private String ysgjzl;
+ private String ysgjph;
+ private String yshwmc;
+ private String bdcdz;
+ private String cqzsh;
+ private String bdcwqhtbh;
+ private String kdsbz;
+ private String tdzzsxmbh;
+ private String hdjsjg;
+ private String sjcjhsje;
+ private String mjdw;
+ private String zlqqz;
+ private String jzfwfsd;
+ private String jzfwmc;
+ private Date createTime;
+ private Date updateTime;
+
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdcxs.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdcxs.java
new file mode 100644
index 00000000..8657a63e
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdcxs.java
@@ -0,0 +1,35 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 数电不动产销售信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-04
+ */
+@Getter
+@Setter
+public class InvoiceQdBdcxs {
+
+ /**
+ * BDCWQHTBH : 不动产单元代码/网签合同备案编号
+ * BDCDZ : 不动产地址
+ * KDSBZ : 跨地(市)标志
+ * TDZZSXMBH : 土地增值税项目编号
+ * HDJSJG : 核定计税价格
+ * SJCJHSJE : 实际成交含税金额
+ * CQZSH : 房屋产权证书号/不动产权证号
+ * MJDW : 面积单位
+ */
+
+ private String BDCWQHTBH;
+ private String BDCDZ;
+ private String KDSBZ;
+ private String TDZZSXMBH;
+ private String HDJSJG;
+ private String SJCJHSJE;
+ private String CQZSH;
+ private String MJDW;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdczl.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdczl.java
new file mode 100644
index 00000000..c5b9a586
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdBdczl.java
@@ -0,0 +1,29 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 数电不动产租赁信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-04
+ */
+@Getter
+@Setter
+public class InvoiceQdBdczl {
+
+ /**
+ * BDCDZ : 不动产地址
+ * KDSBZ : 跨地(市)标志
+ * CQZSH : 房屋产权证书号/不动产权证号
+ * MJDW : 面积单位
+ * ZLQQZ : 租赁期起止
+ */
+
+ private String BDCDZ;
+ private String KDSBZ;
+ private String CQZSH;
+ private String MJDW;
+ private String ZLQQZ;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdHwys.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdHwys.java
new file mode 100644
index 00000000..dd0e85a3
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdHwys.java
@@ -0,0 +1,31 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 数电货物运输信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-04
+ */
+@Getter
+@Setter
+public class InvoiceQdHwys {
+
+ /**
+ * XMXH : 明细序号
+ * QYD : 起运地
+ * DDD : 到达地
+ * YSGJZL : 运输工具种类
+ * YSGJPH : 运输工具牌号
+ * YSHWMC : 运输货物名称
+ */
+
+ private String XMXH;
+ private String QYD;
+ private String DDD;
+ private String YSGJZL;
+ private String YSGJPH;
+ private String YSHWMC;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdJzfw.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdJzfw.java
new file mode 100644
index 00000000..843a2430
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/InvoiceQdJzfw.java
@@ -0,0 +1,25 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * 数电建筑服务信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-24
+ */
+@Getter
+@Setter
+public class InvoiceQdJzfw implements Serializable {
+
+ /**
+ * TDZZSXMBH : 土地增值税项目编号
+ * KDSBZ : 跨地(市)标志
+ */
+
+ private String TDZZSXMBH;
+ private String KDSBZ;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackInfo.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackInfo.java
new file mode 100644
index 00000000..7bb00bb6
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackInfo.java
@@ -0,0 +1,143 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import com.dxhy.order.model.newsk.query.InvoiceInfoDetail;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 数电回推的发票信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-05-04
+ */
+@Getter
+@Setter
+public class QdInvoicePushBackInfo implements Serializable {
+
+
+ /**
+ * FPQQLSH : 发票请求唯一流水号
+ * ZZID : 组织ID
+ * YWLX : 业务类型
+ * DDH : 订单号
+ * NSRSBH : 纳税人识别号
+ * NSRMC : 纳税人名称
+ * KPLX : 开票类型
+ * QDFP_HM : 数电发票号码
+ * KPRQ : 开票日期
+ * BMB_BBH : 编码表版本号
+ * XSF_NSRSBH : 销售方纳税人识别号
+ * XSF_MC : 销售方名称
+ * XSF_DZ : 销售方地址
+ * XSF_DH : 销售方电话
+ * XSF_YH : 销售方银行
+ * XSF_YHZH : 销售方银行账号
+ * GMF_NSRSBH : 购买方纳税人识别号
+ * GMF_MC : 购买方名称
+ * GMF_DZ : 购买方地址
+ * GMF_DH : 购买方电话
+ * GMF_YH : 购买方银行
+ * GMF_YHZH : 购买方银行账号
+ * KPR : 开票人
+ * KPRZJHM : 开票人证件号码
+ * KPRZJLX : 开票人证件类型
+ * FPZLDM : 发票种类代码
+ * TDYS : 特定要素
+ * QYDM : 区域代码
+ * CEZSLXDM : 差额征税类型代码
+ * SGFPLXDM : 收购发票类型代码
+ * CKYWSYZCDM : 出口业务适用政策代码
+ * ZZSJZJTDM : 增值税即征即退代码
+ * YFP_HM : 原发票号码
+ * HZQRXXDBH : 红字确认单编号-数电使用
+ * CHBZ: 冲红标志
+ * JSHJ : 价税合计
+ * HJJE : 合计金额
+ * HJSE : 合计税额
+ * KCE : 扣除额
+ * BZ : 备注
+ * BYZD1 : 备用字段1
+ * BYZD2 : 备用字段2
+ * BYZD3 : 备用字段3
+ * BYZD4 : 备用字段4
+ * BYZD5 : 备用字段5
+ * GMFJBR : 经办人
+ * JBRSFZJHM : 经办人身份证件号码
+ * GMFJBRLXDH : 经办人联系电话
+ * JSFS : 结算方式
+ * SKYHMC : 收款银行名称
+ * SKYHZH : 收款银行账号
+ * YSXWFSD : 应税行为发生地
+ * GMF_ZRRBS : 购买方自然人标识
+ * YHM : 用户名
+ * INVOICE_DETAIL : [{"XMXH":"项目序号","DYLZFPMXXH":"对应蓝字发票明细序号","FPHXZ":"发票行性质","SPBM":"商品编码","YHZCBS":"优惠政策标识","XMMC":"项目名称","GGXH":"规格型号","DW":"单位","XMSL":"项目数量","XMDJ":"项目单价","XMJE":"项目金额","HSJE":"含税金额","SL":"税率","SE":"税额","HSBZ":"含税标识","BYZD1":"备用字段1","BYZD2":"备用字段2","BYZD3":"备用字段3"}]
+ * FJYSLIST : [{"FJYSMC":"附加要素名称","FJYSLX":"附加要素类型","FJYSZ":"附加要素值"}]
+ * TRANSPORT_DETAIL : [{"XMXH":"明细序号","QYD":"起运地","DDD":"到达地","YSGJZL":"运输工具种类","YSGJPH":"运输工具牌号","YSHWMC":"运输货物名称"}]
+ * LEASE_INFO:{BDCDZ : 不动产地址,KDSBZ : 跨地(市)标志,CQZSH : 房屋产权证书号/不动产权证号, MJDW : 面积单位,ZLQQZ : 租赁期起止}
+ * SALE_INFO:{BDCWQHTBH : 不动产单元代码/网签合同备案编号,BDCDZ : 不动产地址,KDSBZ : 跨地(市)标志,TDZZSXMBH : 土地增值税项目编号,HDJSJG : 核定计税价格,SJCJHSJE : 实际成交含税金额,CQZSH : 房屋产权证书号/不动产权证号,MJDW : 面积单位}
+ */
+
+ private String FPQQLSH;
+ private String ZZID;
+ private String YWLX;
+ private String DDH;
+ private String NSRSBH;
+ private String NSRMC;
+ private String KPLX;
+ private String SDFPHM;
+ private String KPRQ;
+ private String BMBBBH;
+ private String XSFNSRSBH;
+ private String XSFMC;
+ private String XSFDZ;
+ private String XSFDH;
+ private String XSFYH;
+ private String XSFYHZH;
+ private String GMFNSRSBH;
+ private String GMFMC;
+ private String GMFDZ;
+ private String GMFDH;
+ private String GMFYH;
+ private String GMFYHZH;
+ private String KPR;
+ private String KPRZJHM;
+ private String KPRZJLX;
+ private String FPZLDM;
+ private String TDYS;
+ private String QYDM;
+ private String CEZSLXDM;
+ private String SGFPLXDM;
+ private String CKYWSYZCDM;
+ private String ZZSJZJTDM;
+ private String YFPHM;
+ private String HZQRXXDBH;
+ private String CHBZ;
+ private String JSHJ;
+ private String HJJE;
+ private String HJSE;
+ private String KCE;
+ private String BZ;
+ private String BYZD1;
+ private String BYZD2;
+ private String BYZD3;
+ private String BYZD4;
+ private String BYZD5;
+ private String GMFJBR;
+ private String JBRSFZJHM;
+ private String GMFJBRLXDH;
+ private String JSFS;
+ private String SKYHMC;
+ private String SKYHZH;
+ private String YSXWFSD;
+ private String GMFZRRBS;
+ private String YHM;
+ private List INVOICE_DETAIL;
+ private List FJYSLIST;
+ private List TRANSPORT_DETAIL;
+ private InvoiceQdBdczl LEASE_INFO;
+ private InvoiceQdBdcxs SALE_INFO;
+ private InvoiceQdJzfw CONSTRUCT_INFO;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackRequest.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackRequest.java
new file mode 100644
index 00000000..c4ff8c4b
--- /dev/null
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/invoiceissue/QdInvoicePushBackRequest.java
@@ -0,0 +1,19 @@
+package com.dxhy.order.model.newsk.invoiceissue;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * 数电发票信息回推请求对象
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-05-04
+ */
+@Getter
+@Setter
+public class QdInvoicePushBackRequest implements Serializable {
+
+ private QdInvoicePushBackInfo INVOICE;
+}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/newsk/query/InvoiceInfoDetail.java b/order-management-common/src/main/java/com/dxhy/order/model/newsk/query/InvoiceInfoDetail.java
index 4a5b7ba2..ce4131d1 100644
--- a/order-management-common/src/main/java/com/dxhy/order/model/newsk/query/InvoiceInfoDetail.java
+++ b/order-management-common/src/main/java/com/dxhy/order/model/newsk/query/InvoiceInfoDetail.java
@@ -42,4 +42,6 @@ public class InvoiceInfoDetail implements Serializable {
private String BYZD3;
private String BYZD4;
private String BYZD5;
+ private String JZFWFSD;
+ private String JZXMMC;
}
diff --git a/order-management-common/src/main/java/com/dxhy/order/model/qd/OrderInfoQd.java b/order-management-common/src/main/java/com/dxhy/order/model/qd/OrderInfoQd.java
index b20348bf..12bfd8d6 100644
--- a/order-management-common/src/main/java/com/dxhy/order/model/qd/OrderInfoQd.java
+++ b/order-management-common/src/main/java/com/dxhy/order/model/qd/OrderInfoQd.java
@@ -1,5 +1,6 @@
package com.dxhy.order.model.qd;
+import com.dxhy.order.model.OrderInfoQdTdyw;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@@ -126,4 +127,6 @@ public class OrderInfoQd implements Serializable {
* 修改时间
*/
private Date updateTime;
+
+ private List orderInfoQdTdywList;
}
diff --git a/order-management-consumer/pom.xml b/order-management-consumer/pom.xml
index bf50ef2d..74f1350c 100644
--- a/order-management-consumer/pom.xml
+++ b/order-management-consumer/pom.xml
@@ -341,7 +341,7 @@
com.xuxueli
xxl-job-core
- 1.9.1
+ 2.4.0
@@ -557,6 +557,11 @@
redis.clients
jedis
+
+ com.alibaba
+ fastjson
+ 1.2.33
+
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/config/XxlJobConfig.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/config/XxlJobConfig.java
index 2d18042b..da8cd73a 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/config/XxlJobConfig.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/config/XxlJobConfig.java
@@ -1,6 +1,7 @@
package com.dxhy.order.consumer.config;
-import com.xxl.job.core.executor.XxlJobExecutor;
+
+import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
@@ -41,12 +42,12 @@ public class XxlJobConfig {
private int logRetentionDays;
- @Bean(initMethod = "start", destroyMethod = "destroy")
- public XxlJobExecutor xxlJobExecutor() {
+ @Bean
+ public XxlJobSpringExecutor xxlJobExecutor() {
log.info(">>>>>>>>>>> xxl-job config init.");
- XxlJobExecutor xxlJobExecutor = new XxlJobExecutor();
+ XxlJobSpringExecutor xxlJobExecutor = new XxlJobSpringExecutor();
xxlJobExecutor.setAdminAddresses(adminAddresses);
- xxlJobExecutor.setAppName(appName);
+ xxlJobExecutor.setAppname(appName);
xxlJobExecutor.setIp(ip);
xxlJobExecutor.setPort(port);
xxlJobExecutor.setAccessToken(accessToken);
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/C48LxpTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/C48LxpTask.java
index a377d226..5ee97eaf 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/C48LxpTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/C48LxpTask.java
@@ -23,8 +23,7 @@ import com.dxhy.order.utils.HttpUtils;
import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -42,9 +41,8 @@ import java.util.*;
* @date 创建时间: 2022-06-10 9:01
*/
@Slf4j
-@JobHandler(value = "C48LxpTask")
@Component
-public class C48LxpTask extends IJobHandler {
+public class C48LxpTask {
private static final String LOGGER_MSG = "(C48离线票定时任务)";
@@ -63,7 +61,7 @@ public class C48LxpTask extends IJobHandler {
@Resource
private InvoiceConfig invoiceConfig;
- @Override
+ @XxlJob("C48LxpTask")
public ReturnT execute(String param) {
log.debug("{}定时任务开始,请求参数:{}", LOGGER_MSG, param);
@@ -145,10 +143,10 @@ public class C48LxpTask extends IJobHandler {
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
log.debug("{}定时任务完成", LOGGER_MSG);
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
public void getLxp(String nsrsbh, String fjh, String startTime, String endTime, int count1) {
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceResendMsgTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceResendMsgTask.java
index cece2cc7..98412d96 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceResendMsgTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceResendMsgTask.java
@@ -19,8 +19,7 @@ import com.dxhy.order.model.*;
import com.dxhy.order.utils.CommonUtils;
import com.dxhy.order.utils.JsonUtils;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -39,9 +38,8 @@ import java.util.stream.Collectors;
*/
@SuppressWarnings("AlibabaMethodTooLong")
@Slf4j
-@JobHandler(value = "fangGeInvoiceResendMsgTask")
@Component
-public class FangGeInvoiceResendMsgTask extends IJobHandler {
+public class FangGeInvoiceResendMsgTask {
private static final String LOGGER_MSG = "(开票中的数据重新发送消息)";
@@ -60,7 +58,7 @@ public class FangGeInvoiceResendMsgTask extends IJobHandler {
@Resource
private FangGeInterfaceService fangGeInterfaceService;
- @Override
+ @XxlJob("fangGeInvoiceResendMsgTask")
public ReturnT execute(String param) {
try {
@@ -84,7 +82,7 @@ public class FangGeInvoiceResendMsgTask extends IJobHandler {
log.debug("========>{}定时任务开始!!!!参数:{}", LOGGER_MSG, param);
if (StringUtils.isEmpty(param)) {
log.warn("请输入参数,要重发多少分钟之前的开票信息");
- return FAIL;
+ return ReturnT.FAIL;
}
Calendar beforeTime = Calendar.getInstance();
int minute = Integer.parseInt(param);
@@ -103,7 +101,7 @@ public class FangGeInvoiceResendMsgTask extends IJobHandler {
List orderProcessInfos = orderProcessService.selectOrderProcessByFpqqlshDdhNsrsbh(paraMap, shList);
log.debug("===========》需要开票的数据:{}", JsonUtils.getInstance().toJsonString(orderProcessInfos));
if (ObjectUtil.isEmpty(orderProcessInfos)) {
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
for (OrderProcessInfo info : orderProcessInfos) {
OrderInvoiceInfo orderInvoiceInfo = orderInvoiceInfoService.selectOrderInvoiceInfoByFpqqlsh(info.getFpqqlsh(), shList);
@@ -183,9 +181,9 @@ public class FangGeInvoiceResendMsgTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceUploadTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceUploadTask.java
index 9c279980..f70451a4 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceUploadTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeInvoiceUploadTask.java
@@ -9,8 +9,7 @@ import com.dxhy.order.baseservice.module.thirdservice.simsback.service.SimsBackS
import com.dxhy.order.invoice.module.fangge.service.FangGeService;
import com.dxhy.order.invoice.module.fangge.service.RegistrationCodeService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -28,9 +27,8 @@ import static com.dxhy.order.constant.OrderInfoEnum.TAX_EQUIPMENT_FG51YZJ;
* @author ZSC-DXHY
*/
@Slf4j
-@JobHandler(value = "fangGeInvoiceUploadTask")
@Component
-public class FangGeInvoiceUploadTask extends IJobHandler {
+public class FangGeInvoiceUploadTask {
private static final String LOGGER_MSG = "(发送发票上传消息)";
@@ -41,7 +39,7 @@ public class FangGeInvoiceUploadTask extends IJobHandler {
@Resource
private SimsBackService simsBackService;
- @Override
+ @XxlJob("fangGeInvoiceUploadTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -85,9 +83,9 @@ public class FangGeInvoiceUploadTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeSendMsgFlagTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeSendMsgFlagTask.java
index 589655c6..d0d389b9 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeSendMsgFlagTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeSendMsgFlagTask.java
@@ -3,8 +3,7 @@ package com.dxhy.order.consumer.handle;
import cn.hutool.core.util.RandomUtil;
import com.dxhy.order.invoice.module.fangge.service.FangGeService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -19,15 +18,14 @@ import javax.annotation.Resource;
* @date 创建时间: 2020-08-14 14:50
*/
@Slf4j
-@JobHandler(value = "fangGeSendMsgFlagTask")
@Component
-public class FangGeSendMsgFlagTask extends IJobHandler {
+public class FangGeSendMsgFlagTask {
private static final String LOGGER_MSG = "(方格发送消息状态任务)";
@Resource
private FangGeService fangGeService;
- @Override
+ @XxlJob("fangGeSendMsgFlagTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -37,9 +35,9 @@ public class FangGeSendMsgFlagTask extends IJobHandler {
fangGeService.handlerIsSendFlag();
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeTaxTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeTaxTask.java
index 03c94fd7..d43a2e89 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeTaxTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/FangGeTaxTask.java
@@ -7,8 +7,7 @@ import com.dxhy.order.model.RegistrationCode;
import com.dxhy.order.invoice.module.fangge.service.FangGeService;
import com.dxhy.order.invoice.module.fangge.service.RegistrationCodeService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -24,9 +23,8 @@ import java.util.List;
* @date 创建时间: 2021-03-03 17:04
*/
@Slf4j
-@JobHandler(value = "fangGeTaxTask")
@Component
-public class FangGeTaxTask extends IJobHandler {
+public class FangGeTaxTask {
private static final String LOGGER_MSG = "(抄报税定时任务)";
@@ -35,7 +33,7 @@ public class FangGeTaxTask extends IJobHandler {
@Resource
private FangGeService fangGeService;
- @Override
+ @XxlJob("fangGeTaxTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -64,9 +62,9 @@ public class FangGeTaxTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GetGsClientTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GetGsClientTask.java
index 7774725b..f2722790 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GetGsClientTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GetGsClientTask.java
@@ -16,8 +16,7 @@ import com.dxhy.order.consumer.openapi.protocol.po.PoCommonResponseParam;
import com.dxhy.order.utils.HttpUtils;
import com.dxhy.order.utils.JsonUtils;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@@ -34,8 +33,7 @@ import java.util.Map;
*/
@Slf4j
@Component
-@JobHandler(value = "/getGsClient")
-public class GetGsClientTask extends IJobHandler {
+public class GetGsClientTask {
private static final String LOGGER_MSG = "(SAP获取公司client)";
@@ -46,7 +44,7 @@ public class GetGsClientTask extends IJobHandler {
@Resource
private GsClientMapper gsClientMapper;
- @Override
+ @XxlJob("/getGsClient")
public ReturnT execute(String s) {
try {
log.debug("{}任务开始", LOGGER_MSG);
@@ -96,8 +94,8 @@ public class GetGsClientTask extends IJobHandler {
log.debug("{}任务结束,耗时:{}", LOGGER_MSG, endTime - startTime);
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GzhProcessFailInvoiceTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GzhProcessFailInvoiceTask.java
index a366d6cd..a163f08c 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GzhProcessFailInvoiceTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/GzhProcessFailInvoiceTask.java
@@ -15,8 +15,7 @@ import com.dxhy.order.consumer.modules.order.service.OrderProcessService;
import com.dxhy.order.consumer.modules.order.service.OrderQrcodeExtendService;
import com.dxhy.order.consumer.modules.scaninvoice.service.ScanInvoiceService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -34,9 +33,8 @@ import java.util.*;
* @date 创建时间: 2020-08-19 9:34
*/
@Slf4j
-@JobHandler(value = "gzhProcessFailInvoiceTask")
@Component
-public class GzhProcessFailInvoiceTask extends IJobHandler {
+public class GzhProcessFailInvoiceTask {
private static final String LOGGER_MSG = "(公众号处理开具失败数据)";
@@ -52,7 +50,7 @@ public class GzhProcessFailInvoiceTask extends IJobHandler {
@Resource
private OrderProcessService orderProcessService;
- @Override
+ @XxlJob("gzhProcessFailInvoiceTask")
public ReturnT execute(String param) {
try {
@@ -152,10 +150,10 @@ public class GzhProcessFailInvoiceTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}处理公众号已授权未开票数据失败,异常信息为:{}", LOGGER_MSG, JsonUtils.getInstance().toJsonString(e));
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoiceEmailMonthPushTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoiceEmailMonthPushTask.java
index a47d1a68..669d015a 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoiceEmailMonthPushTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoiceEmailMonthPushTask.java
@@ -6,8 +6,7 @@ import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
import com.dxhy.order.consumer.modules.manager.service.PushInvoiceService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -30,9 +29,8 @@ import java.util.Map;
* @author xuxueli 2015-12-19 19:43:36
*/
@Slf4j
-@JobHandler(value = "InvoiceEmailMonthPushTask")
@Component
-public class InvoiceEmailMonthPushTask extends IJobHandler {
+public class InvoiceEmailMonthPushTask {
private static final String LOGGER_MSG = "(定时推送开票成功的发票数据)";
@@ -40,7 +38,7 @@ public class InvoiceEmailMonthPushTask extends IJobHandler {
PushInvoiceService pushInvoiceService;
- @Override
+ @XxlJob("InvoiceEmailMonthPushTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -51,7 +49,7 @@ public class InvoiceEmailMonthPushTask extends IJobHandler {
Map paramMap = JsonUtils.getInstance().parseObject(param, Map.class);
if (StringUtils.isBlank(paramMap.get(ConfigureConstant.REQUEST_PARAM_NSRSBH).toString())) {
log.error("{},请求税号为空!", LOGGER_MSG);
- return FAIL;
+ return ReturnT.FAIL;
}
List shList = NsrsbhUtils.transShListByXhfNsrsbh(paramMap.get(ConfigureConstant.REQUEST_PARAM_NSRSBH).toString());
@@ -59,8 +57,8 @@ public class InvoiceEmailMonthPushTask extends IJobHandler {
log.info("========>{}定时任务结束!!!!", LOGGER_MSG);
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoicePushTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoicePushTask.java
index 84484adc..a8b499cb 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoicePushTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/InvoicePushTask.java
@@ -17,8 +17,7 @@ import com.dxhy.order.invoice.module.invoice.model.PushInfo;
import com.dxhy.order.invoice.module.invoice.service.InvalidInvoiceService;
import com.dxhy.order.invoice.module.invoice.service.OrderInvoiceInfoService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -43,9 +42,8 @@ import java.util.stream.Collectors;
*/
@SuppressWarnings("AlibabaMethodTooLong")
@Slf4j
-@JobHandler(value = "InvoicePushTask")
@Component
-public class InvoicePushTask extends IJobHandler {
+public class InvoicePushTask {
private static final String LOGGER_MSG = "(定时推送开票成功的发票数据)";
@@ -63,7 +61,7 @@ public class InvoicePushTask extends IJobHandler {
@SuppressWarnings("AlibabaUndefineMagicConstant")
- @Override
+ @XxlJob("InvoicePushTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -123,9 +121,9 @@ public class InvoicePushTask extends IJobHandler {
log.info("========>{}定时任务结束!!!!", LOGGER_MSG);
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
/**
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/ProcessQueueTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/ProcessQueueTask.java
index bc28a17c..f6d491d8 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/ProcessQueueTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/ProcessQueueTask.java
@@ -19,8 +19,7 @@ import com.dxhy.order.consumer.model.ProcessQueueInfo;
import com.dxhy.order.utils.DecimalCalculateUtil;
import com.dxhy.order.utils.JsonUtils;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -41,9 +40,8 @@ import java.util.stream.Collectors;
* @date 创建时间: 2021-06-28 11:34
*/
@Slf4j
-@JobHandler(value = "processQueueTask")
@Component
-public class ProcessQueueTask extends IJobHandler {
+public class ProcessQueueTask {
private static final String LOGGER_MSG = "(处理队列定时任务)";
@@ -59,7 +57,7 @@ public class ProcessQueueTask extends IJobHandler {
@Resource
private BaseServiceConfig baseServiceConfig;
- @Override
+ @XxlJob("processQueueTask")
public ReturnT execute(String param) {
log.debug("{}定时任务开始,请求参数:{}", LOGGER_MSG, param);
@@ -169,10 +167,10 @@ public class ProcessQueueTask extends IJobHandler {
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
log.debug("{}定时任务完成", LOGGER_MSG);
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SenderTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SenderTask.java
index 0f5b6f8f..4d4bd508 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SenderTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SenderTask.java
@@ -6,8 +6,7 @@ import com.dxhy.order.invoicesender.module.sender.model.FpExpress;
import com.dxhy.order.invoicesender.module.sender.model.KdniaoQueryReq;
import com.dxhy.order.invoicesender.module.sender.service.FpExpressService;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -23,9 +22,8 @@ import java.util.List;
* @date 创建时间: 2020-08-14 15:35
*/
@Component
-@JobHandler(value = "/senderTask")
@Slf4j
-public class SenderTask extends IJobHandler {
+public class SenderTask {
private static final String LOGGER_MSG = "(获取快递信息定时任务)";
@@ -34,7 +32,7 @@ public class SenderTask extends IJobHandler {
@Resource
private FpExpressController fpExpressController;
- @Override
+ @XxlJob("/senderTask")
public ReturnT execute(String s) {
log.info("定时任务开始执行");
try {
@@ -45,7 +43,7 @@ public class SenderTask extends IJobHandler {
this.getFpExpressList();
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
return ReturnT.SUCCESS;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncQdHzqrdTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncQdHzqrdTask.java
index 933e052d..f7415740 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncQdHzqrdTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncQdHzqrdTask.java
@@ -18,8 +18,7 @@ import com.dxhy.order.utils.HttpUtils;
import com.dxhy.order.utils.JsonUtils;
import com.google.common.collect.Maps;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.entity.ContentType;
@@ -40,9 +39,9 @@ import java.util.*;
**/
@Slf4j
@Component
-@JobHandler(value = "/qdHzqrdTask")
+//@JobHandler(value = "/qdHzqrdTask")
@RequestMapping(value = "/qdHzqrd")
-public class SyncQdHzqrdTask extends IJobHandler {
+public class SyncQdHzqrdTask {
private static final String LOGGER_MSG = "(定时同步全电红字确认单)";
@Resource
@@ -54,8 +53,9 @@ public class SyncQdHzqrdTask extends IJobHandler {
@Resource
private OpenApiConfig openApiConfig;
- @Override
+
@PostMapping("/sync")
+ @XxlJob("/qdHzqrdTask")
public ReturnT execute(String param) {
log.debug("{}定时任务开始,请求参数:{}", LOGGER_MSG, param);
try {
@@ -122,10 +122,10 @@ public class SyncQdHzqrdTask extends IJobHandler {
}
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
log.debug("{}定时任务完成", LOGGER_MSG);
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncSpecialInvoiceReversalTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncSpecialInvoiceReversalTask.java
index 3a22c484..e3694663 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncSpecialInvoiceReversalTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncSpecialInvoiceReversalTask.java
@@ -9,7 +9,7 @@ import com.dxhy.order.invoice.module.invoicespecial.service.SpecialInvoiceRevers
import com.dxhy.order.invoice.module.invoicespecial.service.SpecialInvoiceService;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -28,8 +28,7 @@ import static com.dxhy.order.constant.OrderInfoEnum.ORDER_INVOICE_TYPE_52;
*/
@Slf4j
@Component
-@JobHandler(value = "/syncSpecialInvoiceReversal")
-public class SyncSpecialInvoiceReversalTask extends IJobHandler {
+public class SyncSpecialInvoiceReversalTask {
private static final String LOGGER_MSG = "(定时同步红字申请单数据)";
@@ -39,7 +38,7 @@ public class SyncSpecialInvoiceReversalTask extends IJobHandler {
@Resource
private SpecialInvoiceReversalService specialInvoiceReversalService;
- @Override
+ @XxlJob("/syncSpecialInvoiceReversal")
public ReturnT execute(String s) {
try {
//添加日志id
@@ -77,9 +76,9 @@ public class SyncSpecialInvoiceReversalTask extends IJobHandler {
log.debug("{}同步红色申请单定时任务结束,耗时:{}", LOGGER_MSG, endTime - startTime);
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncTask.java
index 050143ad..ff8fea96 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/SyncTask.java
@@ -19,8 +19,9 @@ import com.dxhy.order.baseservice.module.thirdservice.simsback.service.SimsBackS
import com.dxhy.order.consumer.modules.manager.service.InvoiceService;
import com.dxhy.order.consumer.modules.order.service.OrderProcessService;
import com.xxl.job.core.biz.model.ReturnT;
+import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.MDC;
@@ -39,9 +40,8 @@ import java.util.Map;
* @date 创建时间: 2021-06-28 11:34
*/
@Slf4j
-@JobHandler(value = "ukeySyncTask")
@Component
-public class SyncTask extends IJobHandler {
+public class SyncTask {
private static final String LOGGER_MSG = "(同步定时任务)";
@@ -55,8 +55,9 @@ public class SyncTask extends IJobHandler {
@Resource
private RedisService redisService;
- @Override
- public ReturnT execute(String param) {
+ @XxlJob(value = "ukeySyncTask")
+ public void ukeySyncTask() {
+ String param = XxlJobHelper.getJobParam();
log.debug("{}定时任务开始,请求参数:{}", LOGGER_MSG, param);
/**
@@ -74,7 +75,7 @@ public class SyncTask extends IJobHandler {
Map paramMap = JsonUtils.getInstance().parseObject(param, Map.class);
if (ObjectUtil.isNull(paramMap)) {
log.error("{}定时任务请求参数为空:{}", LOGGER_MSG, param);
- return FAIL;
+ return;
}
List shList = NsrsbhUtils.transShListByXhfNsrsbh((String) paramMap.get("xhfNsrsbh"));
@@ -126,11 +127,13 @@ public class SyncTask extends IJobHandler {
}
} catch (Exception e) {
+ XxlJobHelper.log("{}定时任务执行异常:{}", LOGGER_MSG, e);
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ;
}
+ XxlJobHelper.log("{}定时任务完成", LOGGER_MSG);
log.debug("{}定时任务完成", LOGGER_MSG);
- return SUCCESS;
+ return ;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/TestTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/TestTask.java
index 1033b099..abf7fdec 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/TestTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/TestTask.java
@@ -3,7 +3,6 @@ package com.dxhy.order.consumer.handle;
import cn.hutool.core.util.RandomUtil;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
import org.springframework.stereotype.Component;
@@ -15,10 +14,9 @@ import org.springframework.stereotype.Component;
* @date 创建时间: 2020-08-14 15:44
*/
@Component
-@JobHandler(value = "testTask")
-public class TestTask extends IJobHandler {
-
- @Override
+//@JobHandler(value = "testTask")
+public class TestTask {
+
public ReturnT execute(String param) {
//添加日志id
MDCAdapter mdc = MDC.getMDCAdapter();
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/U180InvalidInvoiceResultTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/U180InvalidInvoiceResultTask.java
index 938404bf..7cf4fb7e 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/U180InvalidInvoiceResultTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/U180InvalidInvoiceResultTask.java
@@ -21,7 +21,7 @@ import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -39,9 +39,8 @@ import java.util.stream.Collectors;
* @date 创建时间: 2020-08-14 14:50
*/
@Slf4j
-@JobHandler(value = "u180InvaliInvoiceResultTask")
@Component
-public class U180InvalidInvoiceResultTask extends IJobHandler {
+public class U180InvalidInvoiceResultTask {
private static final String LOGGER_MSG = "(U180获取作废结果)";
@@ -54,7 +53,7 @@ public class U180InvalidInvoiceResultTask extends IJobHandler {
@Resource
private RabbitMqSendMessageService rabbitMqSendMessageService;
- @Override
+ @XxlJob("u180InvaliInvoiceResultTask")
public ReturnT execute(String param) {
try {
//添加日志id
@@ -140,9 +139,9 @@ public class U180InvalidInvoiceResultTask extends IJobHandler {
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/UkeyCheckFailSyncTask.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/UkeyCheckFailSyncTask.java
index d122e1ff..4a692e7f 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/UkeyCheckFailSyncTask.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/handle/UkeyCheckFailSyncTask.java
@@ -33,8 +33,7 @@ import com.dxhy.order.utils.DecimalCalculateUtil;
import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
import com.xxl.job.core.biz.model.ReturnT;
-import com.xxl.job.core.handler.IJobHandler;
-import com.xxl.job.core.handler.annotation.JobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.MDC;
import org.slf4j.spi.MDCAdapter;
@@ -52,9 +51,9 @@ import java.util.List;
*/
@SuppressWarnings("AlibabaMethodTooLong")
@Slf4j
-@JobHandler(value = "ukeyCheckFailSyncTask")
+//@JobHandler(value = "ukeyCheckFailSyncTask")
@Component
-public class UkeyCheckFailSyncTask extends IJobHandler {
+public class UkeyCheckFailSyncTask {
private static final String LOGGER_MSG = "(UKey获取验签失败数据)";
@@ -75,7 +74,7 @@ public class UkeyCheckFailSyncTask extends IJobHandler {
@Resource
private UnifyService unifyService;
- @Override
+ @XxlJob("ukeyCheckFailSyncTask")
public ReturnT execute(String param) {
try {
@@ -210,9 +209,9 @@ public class UkeyCheckFailSyncTask extends IJobHandler {
} catch (Exception e) {
log.error("{}定时任务执行异常:{}", LOGGER_MSG, e);
- return FAIL;
+ return ReturnT.FAIL;
}
- return SUCCESS;
+ return ReturnT.SUCCESS;
}
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/controller/InvoiceReceiveController.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/controller/InvoiceReceiveController.java
index f6c10d3d..164507b7 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/controller/InvoiceReceiveController.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/controller/InvoiceReceiveController.java
@@ -1,14 +1,20 @@
package com.dxhy.order.consumer.modules.manager.controller;
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.nacos.client.naming.utils.CollectionUtils;
+import com.dxhy.order.baseservice.constant.OrderEnum;
import com.dxhy.order.constant.*;
import com.dxhy.order.consumer.modules.manager.model.dto.ManualPushInvoiceDTO;
+import com.dxhy.order.consumer.openapi.protocol.v4.order.*;
+import com.dxhy.order.consumer.openapi.protocol.v6.order.*;
import com.dxhy.order.exception.OrderReceiveException;
import com.dxhy.order.model.*;
-import com.dxhy.order.model.newsk.invoiceissue.InvoiceIssueFailDetail;
+import com.dxhy.order.model.newsk.invoiceissue.*;
+import com.dxhy.order.model.newsk.query.InvoiceInfoDetail;
import com.dxhy.order.model.queue.FpkjMqData;
import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
@@ -19,9 +25,6 @@ import com.dxhy.order.consumer.config.OpenApiConfig;
import com.dxhy.order.consumer.modules.manager.service.InvoiceDataService;
import com.dxhy.order.consumer.modules.manager.service.InvoiceReceiveService;
import com.dxhy.order.consumer.modules.order.service.impl.PollInvoiceServiceImpl;
-import com.dxhy.order.consumer.openapi.protocol.v4.order.DdfpdrReqBO;
-import com.dxhy.order.consumer.openapi.protocol.v4.order.DdfpdrRspBO;
-import com.dxhy.order.consumer.openapi.protocol.v4.order.DdfpzxxBO;
import com.dxhy.order.consumer.openapi.service.InterfaceServiceV3;
import com.dxhy.order.invoice.module.invoice.service.InvalidInvoiceService;
import com.dxhy.order.invoice.module.invoice.service.OrderInvoiceInfoService;
@@ -43,9 +46,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.nio.charset.StandardCharsets;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
/**
* @author :杨士勇
@@ -146,6 +147,71 @@ public class InvoiceReceiveController {
}
}
+ /**
+ * 接收数电发票数据回推
+ * @param request 回推数据
+ * @since V6.1.7
+ */
+ @ApiOperation(value = "接收数电发票数据回推", notes = "接收数电发票数据回推-接收底层开具数电发票后将数据回推订单服务")
+ @PostMapping("/receiveQdInvoices")
+ public InterfaceData receiveQdInvoices(HttpServletRequest request){
+ InterfaceData interfaceData = new InterfaceData();
+ try {
+ String data = IOUtils.toString(request.getInputStream(), StandardCharsets.UTF_8);
+ log.info("{}接收数电发票数据回推数据,入参:{}", LOGGER_MSG, data);
+
+ interfaceData = ProtocolUtil.decodeData(data);
+ log.debug("{}接收数电发票数据回推数据,解密后数据为:{}", LOGGER_MSG, interfaceData.getData());
+ List qdInvoicePushBackRequestList = JsonUtils.getInstance().jsonToList(interfaceData.getData(), QdInvoicePushBackRequest.class);
+
+ //判断入参是否为空
+ if(CollectionUtil.isEmpty(qdInvoicePushBackRequestList)){
+ throw new OrderReceiveException(ConfigureConstant.STRING_9999, "回推的数电发票数据为空");
+ }
+ if(Objects.isNull(qdInvoicePushBackRequestList.get(0)) || Objects.isNull(qdInvoicePushBackRequestList.get(0).getINVOICE())){
+ throw new OrderReceiveException(ConfigureConstant.STRING_9999, "回推的数电发票数据为空");
+ }
+
+ //数电发票数据bean转换
+ List ddfpzxxList = convetDdfpzxxBO(qdInvoicePushBackRequestList);
+
+ List ddfpdrRspList = interfaceServiceV3.importIssuedInvoice(ddfpzxxList, OrderInfoEnum.ORDER_SOURCE_9.getKey(),
+ "", ConfigurerInfo.INTERFACE_VERSION_V4);
+ log.info("{}接收数电发票数据回推数据,返回数据:{}", LOGGER_MSG, JsonUtils.getInstance().toJsonString(ddfpdrRspList));
+
+ return buildReturnData(interfaceData, OrderInfoEnum.INTERFACE_SUCCESS.getKey(),
+ OrderInfoEnum.INTERFACE_SUCCESS.getValue(), ddfpdrRspList);
+
+ } catch (OrderReceiveException e) {
+ log.error("{}接收数电发票数据回推数据异常", LOGGER_MSG, e);
+ return buildReturnData(interfaceData,e.getCode(),e.getMessage(),null);
+ } catch (Exception e) {
+ log.error("{}接收数电发票数据回推数据异常", LOGGER_MSG, e);
+ return buildReturnData(interfaceData,ConfigureConstant.STRING_9999,e.getMessage(),null);
+ }
+ }
+
+ public static void main(String[] args) {
+ String dd =
+ "\n" +
+ " RPA\n" +
+ " 1240165797PJo03yB4osQVSGQJWNiGdw==\n" +
+ " 911506910755565050\n" +
+ " 1\n" +
+ " \n" +
+ " 2\n" +
+ " H4sIAAAAAAAAAAFgBZ/6OT+6hQJy1UK1RkdAEIDzGjjhDYEXOK5wYwMxwzTah2s6ZkN71cmHG2Di6Bxw6Ga9uY6enLZkxK/9L0vZZGS03PNpGOur4ErFaY6Kk5ewnj6frbLE0k1zjfjmAdy1jfiAJ9upM6WbD6E3SQrpYxonyGJAcuX3MX6tpbUs8uvGWEH0jhibtX4H2BLcRX9wHqrs3UrLC5k8ECWPANfBies5PwOjRhM6kv3vKiUhjazwOvvigB4IPd14OUq7e9R/29TRmwa5IP4rSrKtz6qJ1hXEHGyAXmPV2hTBasblEDe4U/KE/u+ha4kgYpQNCJz6fiV+SezLFd/r5jS6k/fuVca8Ob4qJVkVeE8XZxRJe5IKVGJLR3xyLn8+ESlLH+0e9BJpJlkzQwLJW/BLIDzI/gsaOR5Fg6Q30zlSB7JW/db6ONtD+sFHZSIICOjDo6oxUDLb52CqCffQjhoCGDCoZA/agEBcSCoEBeVQYJHHL+DMGlX8A3qs+Z+2ETpwFlYS0rTwg6NZFiiNaAgT9l1AWGoHpUwkNL3DckUpH18VG97VHrY5PSX91ALVFhHAhcw+8Ivb+dyVMBkKNXn1mnVFmqWUJAQVfXvNcHF81iIwpV1OOOR3HF99YiX/2ja34pARBrx3lMLIOCIUknBEvSs4w5TtyjNuNlzLnvPW/kQGeNh7l4UHYxP8gCDUvfrut0r+OamXL99OAmgrPTcZR7k2Jnq4K0DJ8fp6ed9zjfiHACh55mEw7mRCUhPCHY7PXwHyvvJGd1nDmytcSU67uL0SogriQFrj0BLJbNXwyEFPJ3AvNa8AzVgvOAZznKbUppe1/GclYy6mt4JoJEj7t02lHgOg6W7P9uj+HLJrcsSBHrgMFQobJH2NkmRSFMVAw2yC8Z7uTd9pXSNiEVVg0YPcvyVs6C2+6QahytDrz4b9zmACtNKM51WWqk5NpIN06qC2itV85EeI/oseY/XzgSinW0UAcHb7nUIhXqwdbN1Vm8DIDz4/TDTFqAA4cSfeg3fac/auo5FsnXwab3XW1zdaMKuKsiW899qr+tQwD46zmAbLGuIwl8kNzuCPUwmhMgCG0StI/6v1qSWC9KnS/vJzmR5juo2EZFLVMgEpftdiuprPiuvPKfITVfuSHNpVrwgAhz8mpbUs8uvGWEH0jhibtX4H2EZqmbj7XU9iWqrem4lsVAFltIHA0qyOEiNxVhg+KrFnP96fkpTAcheVeYHwTqJJ2JUGISr/g+GTr592Ks3muAATSbBNHIz1OC2EOcpL+lkK0/X9WAp8y5Kz/8dg1FhEOz7CZvkAjO5bb2iJ1ghDWhrzpbEbEQi3npnK9e8D5VKGJbd8mTe6hNCl/liqXiOu8QLD2LHsQSxFuXz1lCH1mQFxZ5saSXTwXekdTSGnAmIanitdnM5W/uuaVftxv1PM4Onn+jMTlLgycl4LCEZon7wu18H45+aSo4pBOxqbUBuwCVv3b/TYSz2EYogEJxWOX9I1JVU9nzVmrYJs21JY8vhNWRnvcxVs76e/Yo/Xi6qjr/cff4ID/pMw30TGEXZsorVDHKa6qrsLNPnksSXKa9gaSAxoleesMwU2RJTcCxCtSSpKr/yWUMu+0Eb6BU5W+6HBmJc9loKTIrj1txqQ5KjI4/HX8BZAKLT8zfA+o2b1lr1s9fuR1YXy6D+y53HFb1YMz95trUavWpdAt32ZGWO7uaECn6FG7HYEO6CeWEuaejq3jJJG32nIy1r/UQHV4VuPUmYq57cbvC2LBda/ZuxGQNUDICDeNPZ0vE+LeG6LdwlW+Uq+YjWNuaZdBwaQcMIg7ED9qT1DBrtAwsERLQZUZXiHYAUAAA==\n" +
+ " 1.3\n" +
+ " FAAD\n" +
+ " 837287767230406953134111351889\n" +
+ "";
+ try {
+ InterfaceData interfaceData = ProtocolUtil.decodeData(dd);
+ JsonUtils.getInstance().jsonToList(interfaceData.getData(), QdInvoicePushBackRequest.class);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
@ApiOperation(value = "接收税控发票修复数据", notes = "接收税控发票修复数据-接收税控底层修复的发票数据")
@PostMapping("/receiveRepairedInvoices")
@@ -431,4 +497,264 @@ public class InvoiceReceiveController {
return R.error();
}
}
+
+ private List convetDdfpzxxBO(List qdInvoicePushBackRequestList){
+ List ddfpzxxList = new ArrayList<>(qdInvoicePushBackRequestList.size());
+ qdInvoicePushBackRequestList.forEach(invoiceIssueRequest -> {
+ QdInvoicePushBackInfo qdInvoiceIssueInfo = invoiceIssueRequest.getINVOICE();
+
+ //订单发票信息
+ DdfpxxBO ddfpxxBO = transDdfpxxBO(qdInvoiceIssueInfo);
+
+ //发票明细信息
+ List invoiceInfoDetailList = qdInvoiceIssueInfo.getINVOICE_DETAIL();
+ List ddmxxxBOList = new ArrayList<>(16);
+ if(CollectionUtil.isNotEmpty(invoiceInfoDetailList)){
+ invoiceInfoDetailList.forEach(invoiceInfoDetail -> {
+ DdmxxxBO ddmxxxBO = transInvoiceInfoDetail(invoiceInfoDetail);
+ ddmxxxBOList.add(ddmxxxBO);
+ });
+ }
+
+ //数电发票信息
+ QdTxxBO qdTxxBO = transQdTxxBO(qdInvoiceIssueInfo);
+ DdfpzxxBO ddfpzxxBO = new DdfpzxxBO();
+ ddfpzxxBO.setDDFPXX(ddfpxxBO);
+ ddfpzxxBO.setDDMXXX(ddmxxxBOList);
+ ddfpzxxBO.setQDTXXBO(qdTxxBO);
+
+ ddfpzxxList.add(ddfpzxxBO);
+ });
+ return ddfpzxxList;
+ }
+
+ private DdfpxxBO transDdfpxxBO(QdInvoicePushBackInfo qdInvoiceIssueInfo){
+ //数电农产品收购发票
+ boolean qdncp = OrderEnum.ORDER_QD_TDYS_16.getKey().equals(qdInvoiceIssueInfo.getTDYS())
+ && OrderEnum.ORDER_QD_SGFPLXDM_01.getKey().equals(qdInvoiceIssueInfo.getSGFPLXDM());
+
+ DdfpxxBO ddfpxxBO = new DdfpxxBO();
+ //todo 发票请求流水号(税控) 对应 订单请求流水号(订单),订单库中的kplsh是订单系统生成的并不是税控的发票请求流水号
+ ddfpxxBO.setDDQQLSH(qdInvoiceIssueInfo.getFPQQLSH());
+ ddfpxxBO.setDDH(qdInvoiceIssueInfo.getDDH());
+ ddfpxxBO.setTHDH("");
+ ddfpxxBO.setMDH("");
+ ddfpxxBO.setENTID(qdInvoiceIssueInfo.getZZID());
+ ddfpxxBO.setNSRSBH(qdInvoiceIssueInfo.getNSRSBH());
+ ddfpxxBO.setNSRMC(qdInvoiceIssueInfo.getNSRMC());
+ ddfpxxBO.setKPLX(qdInvoiceIssueInfo.getKPLX());
+ ddfpxxBO.setQYLX("");
+ ddfpxxBO.setBMBBBH(qdInvoiceIssueInfo.getBMBBBH());
+
+ if(qdncp){
+ ddfpxxBO.setXHFSBH(qdInvoiceIssueInfo.getGMFNSRSBH());
+ ddfpxxBO.setXHFMC(qdInvoiceIssueInfo.getGMFMC());
+ ddfpxxBO.setXHFDZ(qdInvoiceIssueInfo.getGMFDZ());
+ ddfpxxBO.setXHFDH(qdInvoiceIssueInfo.getGMFDH());
+ ddfpxxBO.setXHFYH(qdInvoiceIssueInfo.getGMFYH());
+ ddfpxxBO.setXHFZH(qdInvoiceIssueInfo.getGMFYHZH());
+
+ ddfpxxBO.setGMFSBH(qdInvoiceIssueInfo.getXSFNSRSBH());
+ ddfpxxBO.setGMFMC(qdInvoiceIssueInfo.getXSFMC());
+ ddfpxxBO.setGMFDZ(qdInvoiceIssueInfo.getXSFDZ());
+ ddfpxxBO.setGMFDH(qdInvoiceIssueInfo.getXSFDH());
+ ddfpxxBO.setGMFYH(qdInvoiceIssueInfo.getXSFYH());
+ ddfpxxBO.setGMFZH(qdInvoiceIssueInfo.getXSFYHZH());
+ } else {
+ ddfpxxBO.setXHFSBH(qdInvoiceIssueInfo.getXSFNSRSBH());
+ ddfpxxBO.setXHFMC(qdInvoiceIssueInfo.getXSFMC());
+ ddfpxxBO.setXHFDZ(qdInvoiceIssueInfo.getXSFDZ());
+ ddfpxxBO.setXHFDH(qdInvoiceIssueInfo.getXSFDH());
+ ddfpxxBO.setXHFYH(qdInvoiceIssueInfo.getXSFYH());
+ ddfpxxBO.setXHFZH(qdInvoiceIssueInfo.getXSFYHZH());
+
+ ddfpxxBO.setGMFSBH(qdInvoiceIssueInfo.getGMFNSRSBH());
+ ddfpxxBO.setGMFMC(qdInvoiceIssueInfo.getGMFMC());
+ ddfpxxBO.setGMFDZ(qdInvoiceIssueInfo.getGMFDZ());
+ ddfpxxBO.setGMFDH(qdInvoiceIssueInfo.getGMFDH());
+ ddfpxxBO.setGMFYH(qdInvoiceIssueInfo.getGMFYH());
+ ddfpxxBO.setGMFZH(qdInvoiceIssueInfo.getGMFYHZH());
+ }
+ if(ConfigureConstant.STRING_Y.equals(qdInvoiceIssueInfo.getGMFZRRBS())){
+ ddfpxxBO.setGMFLX(OrderInfoEnum.GHF_QYLX_03.getKey());
+ } else {
+ ddfpxxBO.setGMFLX(OrderInfoEnum.GHF_QYLX_04.getKey());
+ }
+ ddfpxxBO.setGMFBM("");
+ ddfpxxBO.setGMFSF("");
+ ddfpxxBO.setGMFSJH("");
+ ddfpxxBO.setGMFDZYX("");
+
+ ddfpxxBO.setKPR(qdInvoiceIssueInfo.getKPR());
+ ddfpxxBO.setKPRZJLX(qdInvoiceIssueInfo.getKPRZJLX());
+ ddfpxxBO.setKPRZJHM(qdInvoiceIssueInfo.getKPRZJHM());
+ ddfpxxBO.setSKR("");
+ ddfpxxBO.setFHR("");
+
+ ddfpxxBO.setYFPDM("");
+ ddfpxxBO.setYFPHM(qdInvoiceIssueInfo.getYFPHM());
+ ddfpxxBO.setYFPKPRQ("");
+ ddfpxxBO.setYFPLX("");
+ ddfpxxBO.setCHYY("");
+ ddfpxxBO.setTSCHBZ("");
+ ddfpxxBO.setHZXXBBH(qdInvoiceIssueInfo.getHZQRXXDBH());
+
+ if(qdncp){
+ ddfpxxBO.setQDBZ(OrderInfoEnum.QDBZ_CODE_2.getKey());
+ ddfpxxBO.setQDXMMC(OrderInfoEnum.QDBZ_CODE_2.getValue());
+ } else {
+ ddfpxxBO.setQDBZ(OrderInfoEnum.QDBZ_CODE_0.getKey());
+ ddfpxxBO.setQDXMMC(OrderInfoEnum.QDBZ_CODE_0.getValue());
+ }
+
+ ddfpxxBO.setJSHJ(qdInvoiceIssueInfo.getJSHJ());
+ ddfpxxBO.setHJJE(qdInvoiceIssueInfo.getHJJE());
+ ddfpxxBO.setHJSE(qdInvoiceIssueInfo.getHJSE());
+
+ ddfpxxBO.setBZ(qdInvoiceIssueInfo.getBZ());
+ ddfpxxBO.setDDSJ(DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN));
+ ddfpxxBO.setYWLX(qdInvoiceIssueInfo.getYWLX());
+ ddfpxxBO.setKPFS(OrderInfoEnum.ORDER_REQUEST_TYPE_0.getKey());
+ ddfpxxBO.setTQM("");
+ ddfpxxBO.setDTM("");
+
+ ddfpxxBO.setDDZT(OrderInfoEnum.ORDER_STATUS_5.getKey());
+ ddfpxxBO.setDDZTXX(OrderInfoEnum.ORDER_STATUS_5.getValue());
+ if(OrderInfoEnum.ORDER_BILLING_INVOICE_TYPE_1.getKey().equals(qdInvoiceIssueInfo.getKPLX())){
+ ddfpxxBO.setDDZT(OrderInfoEnum.ORDER_STATUS_7.getKey());
+ ddfpxxBO.setDDZTXX(OrderInfoEnum.ORDER_STATUS_7.getValue());
+ }
+
+ ddfpxxBO.setFPLXDM(qdInvoiceIssueInfo.getFPZLDM());
+ ddfpxxBO.setDDLY(OrderInfoEnum.ORDER_SOURCE_9.getKey());
+ //冲红标志
+ ddfpxxBO.setCHBZ(qdInvoiceIssueInfo.getCHBZ());
+ ddfpxxBO.setZFBZ(OrderInfoEnum.INVALID_INVOICE_0.getKey());
+ ddfpxxBO.setSFCF(OrderInfoEnum.INTERFACE_SFCF_0.getKey());
+ ddfpxxBO.setCFFS("");
+ ddfpxxBO.setSLKJLY("");
+ ddfpxxBO.setKPJH("");
+ ddfpxxBO.setKPZD("");
+ ddfpxxBO.setJQBH("");
+ ddfpxxBO.setFJH("");
+
+ ddfpxxBO.setFPHM(qdInvoiceIssueInfo.getSDFPHM());
+ ddfpxxBO.setKPRQ(qdInvoiceIssueInfo.getKPRQ());
+ ddfpxxBO.setJYM("");
+ ddfpxxBO.setFWM("");
+ ddfpxxBO.setEWM("");
+ ddfpxxBO.setPDFZJL("");
+ ddfpxxBO.setZJLLX("");
+ ddfpxxBO.setPDFDZ("");
+ ddfpxxBO.setSLKJLY("");
+ ddfpxxBO.setYHM(qdInvoiceIssueInfo.getYHM());
+ ddfpxxBO.setOFDTOPDFZJ("");
+
+ ddfpxxBO.setBYZD1(qdInvoiceIssueInfo.getBYZD1());
+ ddfpxxBO.setBYZD2(qdInvoiceIssueInfo.getBYZD2());
+ ddfpxxBO.setBYZD3(qdInvoiceIssueInfo.getBYZD3());
+ ddfpxxBO.setBYZD4(qdInvoiceIssueInfo.getBYZD4());
+ ddfpxxBO.setBYZD5(qdInvoiceIssueInfo.getBYZD5());
+ return ddfpxxBO;
+ }
+
+ private DdmxxxBO transInvoiceInfoDetail(InvoiceInfoDetail invoiceInfoDetail){
+ DdmxxxBO ddmxxxBO = new DdmxxxBO();
+ ddmxxxBO.setXH(invoiceInfoDetail.getXMXH());
+ ddmxxxBO.setDYLZFPMXXH(invoiceInfoDetail.getDYLZFPMXXH());
+ ddmxxxBO.setSPID("");
+ ddmxxxBO.setFPHXZ(invoiceInfoDetail.getFPHXZ());
+ ddmxxxBO.setSPBM(invoiceInfoDetail.getSPBM());
+ ddmxxxBO.setZXBM("");
+ ddmxxxBO.setYHZCBS(invoiceInfoDetail.getYHZCBS());
+ ddmxxxBO.setLSLBS("");
+ ddmxxxBO.setZZSTSGL("");
+ ddmxxxBO.setXMMC(invoiceInfoDetail.getXMMC());
+ ddmxxxBO.setGGXH(invoiceInfoDetail.getGGXH());
+ ddmxxxBO.setDW(invoiceInfoDetail.getDW());
+ ddmxxxBO.setSPSL(invoiceInfoDetail.getXMSL());
+ ddmxxxBO.setDJ(invoiceInfoDetail.getXMDJ());
+ ddmxxxBO.setJE(invoiceInfoDetail.getXMJE());
+ ddmxxxBO.setHSBZ(invoiceInfoDetail.getHSBZ());
+ ddmxxxBO.setSL(invoiceInfoDetail.getSL());
+ ddmxxxBO.setSE(invoiceInfoDetail.getSE());
+ ddmxxxBO.setKCE("");
+ ddmxxxBO.setBYZD1(invoiceInfoDetail.getBYZD1());
+ ddmxxxBO.setBYZD2(invoiceInfoDetail.getBYZD2());
+ ddmxxxBO.setBYZD3(invoiceInfoDetail.getBYZD3());
+ return ddmxxxBO;
+ }
+
+ private QdTxxBO transQdTxxBO(QdInvoicePushBackInfo qdInvoiceIssueInfo){
+ QdTxxBO qdTxxBO = new QdTxxBO();
+ qdTxxBO.setZZID(qdInvoiceIssueInfo.getZZID());
+ qdTxxBO.setTDYS(qdInvoiceIssueInfo.getTDYS());
+ qdTxxBO.setQYDM(qdInvoiceIssueInfo.getQYDM());
+ qdTxxBO.setCEZSLXDM(qdInvoiceIssueInfo.getCEZSLXDM());
+ qdTxxBO.setSGFPLXDM(qdInvoiceIssueInfo.getSGFPLXDM());
+ qdTxxBO.setCKYWSYZCDM(qdInvoiceIssueInfo.getCKYWSYZCDM());
+ qdTxxBO.setZZSJZJTDM(qdInvoiceIssueInfo.getZZSJZJTDM());
+ qdTxxBO.setGMFJBR(qdInvoiceIssueInfo.getGMFJBR());
+ qdTxxBO.setJBRSFZJHM(qdInvoiceIssueInfo.getJBRSFZJHM());
+ qdTxxBO.setGMFJBRLXDH(qdInvoiceIssueInfo.getGMFJBRLXDH());
+ qdTxxBO.setJSFS(qdInvoiceIssueInfo.getJSFS());
+ qdTxxBO.setSKYHMC(qdInvoiceIssueInfo.getSKYHMC());
+ qdTxxBO.setSKYHZH(qdInvoiceIssueInfo.getSKYHZH());
+ qdTxxBO.setYSXWFSD(qdInvoiceIssueInfo.getYSXWFSD());
+ //附加要素
+ List fjyslist = qdInvoiceIssueInfo.getFJYSLIST();
+ List fjysBOList = new ArrayList<>(16);
+ if(CollectionUtil.isNotEmpty(fjyslist)){
+ fjyslist.forEach(fjys -> {
+ QdFjysBO qdFjysBO = new QdFjysBO();
+ qdFjysBO.setFJYSMC(fjys.getFJYSMC());
+ qdFjysBO.setFJYSLX(fjys.getFJYSLX());
+ qdFjysBO.setFJYSZ(fjys.getFJYSZ());
+ fjysBOList.add(qdFjysBO);
+ });
+ }
+ qdTxxBO.setFJYSLIST(fjysBOList);
+
+ //特定业务信息
+ //货物运输
+ List invoiceQdHwysList = qdInvoiceIssueInfo.getTRANSPORT_DETAIL();
+ if(CollectionUtil.isNotEmpty(invoiceQdHwysList)){
+ List hwysBOList = new ArrayList<>(16);
+ invoiceQdHwysList.forEach(invoiceQdHwys -> {
+ HwysBO hwysBO = new HwysBO();
+ BeanUtils.copyProperties(invoiceQdHwys,hwysBO);
+ hwysBOList.add(hwysBO);
+ });
+ qdTxxBO.setHWYSLIST(hwysBOList);
+ }
+
+ //不动产租赁
+ InvoiceQdBdczl invoiceQdBdczl = qdInvoiceIssueInfo.getLEASE_INFO();
+ if(Objects.nonNull(invoiceQdBdczl)){
+ BdczlBO bdczlBO = new BdczlBO();
+ BeanUtils.copyProperties(invoiceQdBdczl, bdczlBO);
+ qdTxxBO.setBDCZLXX(bdczlBO);
+ }
+
+ //不动产销售
+ InvoiceQdBdcxs invoiceQdBdcxs = qdInvoiceIssueInfo.getSALE_INFO();
+ if(Objects.nonNull(invoiceQdBdcxs)){
+ BdcxsBO bdcxsBO = new BdcxsBO();
+ BeanUtils.copyProperties(invoiceQdBdcxs, bdcxsBO);
+ qdTxxBO.setBDCXSXX(bdcxsBO);
+ }
+ //建筑服务
+ InvoiceQdJzfw invoiceQdJzfw = qdInvoiceIssueInfo.getCONSTRUCT_INFO();
+ List invoiceDetail = qdInvoiceIssueInfo.getINVOICE_DETAIL();
+ if(Objects.nonNull(invoiceQdJzfw) && CollectionUtil.isNotEmpty(invoiceDetail)){
+ InvoiceInfoDetail invoiceInfoDetail = invoiceDetail.get(0);
+ JzfwBO jzfwBO = new JzfwBO();
+ jzfwBO.setTDZZSXMBH(invoiceQdJzfw.getTDZZSXMBH());
+ jzfwBO.setJZFWFSD(invoiceInfoDetail.getJZFWFSD());
+ jzfwBO.setJZFWMC(invoiceInfoDetail.getJZXMMC());
+ jzfwBO.setKDSBZ(invoiceQdJzfw.getKDSBZ());
+ qdTxxBO.setJZFWXX(jzfwBO);
+ }
+ return qdTxxBO;
+ }
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
index 52ff8b0a..41d3457d 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderProcessServiceImpl.java
@@ -82,9 +82,14 @@ public class OrderProcessServiceImpl implements OrderProcessService {
log.debug("订单查询,当前页:{},页面条数:{}", currPage, pageSize);
PageHelper.startPage(currPage, pageSize);
List list = orderProcessInfoMapper.queryOrderInfo(paramMap, shList, entList);
- List taxpayerEntityList = userInfoService.getTaxpayerEntityList();
- Map collect = taxpayerEntityList.stream().collect(Collectors.toMap(t -> t.getDeptId(), t -> t.getName()));
- list.forEach(op -> {
+ Map collect = null;
+ try {
+ List taxpayerEntityList = userInfoService.getTaxpayerEntityList();
+ collect = taxpayerEntityList.stream().collect(Collectors.toMap(t -> t.getDeptId(), t -> t.getName()));
+ } catch (Exception e) {
+ log.error("订单查询异常{}",e.getMessage());
+ }
+ for (OrderProcessInfo op : list) {
//如果是红票,将清单标志改为0,(红票没有清单)
if (OrderInfoEnum.ORDER_BILLING_INVOICE_TYPE_1.getKey().equals(op.getKplx())) {
op.setQdbz("0");
@@ -93,8 +98,10 @@ public class OrderProcessServiceImpl implements OrderProcessService {
if (Objects.isNull(op.getDyztms())) {
op.setDyztms("");
}
- op.setTaxpayerName(StringUtils.isNotBlank(collect.get(op.getEntId()))?collect.get(op.getEntId()):"");
- });
+ if(collect != null){
+ op.setTaxpayerName(StringUtils.isNotBlank(collect.get(op.getEntId()))?collect.get(op.getEntId()):"");
+ }
+ }
PageInfo pageInfo = new PageInfo<>(list);
return new PageUtils(pageInfo.getList(), (int) pageInfo.getTotal(), pageInfo.getPageSize(),
pageInfo.getPageNum());
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/order/DdfpxxBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/order/DdfpxxBO.java
index f16927a6..245dc346 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/order/DdfpxxBO.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/order/DdfpxxBO.java
@@ -95,4 +95,14 @@ public class DdfpxxBO extends DdtxxBO {
* ofd转pdf流文件
*/
private String OFDTOPDFZJ;
+
+ /**
+ * 拆分方式(0:按业务系统配置的拆分规则进行拆分;1:按商品固定数量拆分)
+ */
+ private String CFFS;
+
+ /**
+ * 电局登录用户名
+ */
+ private String YHM;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdcxsBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdcxsBO.java
new file mode 100644
index 00000000..bee5d069
--- /dev/null
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdcxsBO.java
@@ -0,0 +1,39 @@
+package com.dxhy.order.consumer.openapi.protocol.v6.order;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serializable;
+
+/**
+ * 数电信息-不动产销售信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-04
+ */
+@Getter
+@Setter
+@ToString
+public class BdcxsBO implements Serializable {
+
+ /**
+ * BDCWQHTBH : 不动产单元代码/网签合同备案编号
+ * BDCDZ : 不动产地址
+ * KDSBZ : 跨地(市)标志
+ * TDZZSXMBH : 土地增值税项目编号
+ * HDJSJG : 核定计税价格
+ * SJCJHSJE : 实际成交含税金额
+ * CQZSH : 房屋产权证书号/不动产权证号
+ * MJDW : 面积单位
+ */
+
+ private String BDCWQHTBH;
+ private String BDCDZ;
+ private String KDSBZ;
+ private String TDZZSXMBH;
+ private String HDJSJG;
+ private String SJCJHSJE;
+ private String CQZSH;
+ private String MJDW;
+}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdczlBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdczlBO.java
new file mode 100644
index 00000000..df8c3474
--- /dev/null
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/BdczlBO.java
@@ -0,0 +1,34 @@
+package com.dxhy.order.consumer.openapi.protocol.v6.order;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serializable;
+
+/**
+ * 数电信息-不动产租赁信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-04
+ */
+@Getter
+@Setter
+@ToString
+public class BdczlBO implements Serializable {
+
+ /**
+ * BDCDZ : 不动产地址
+ * KDSBZ : 跨地(市)标志
+ * CQZSH : 房屋产权证书号/不动产权证号
+ * MJDW : 面积单位
+ * ZLQQZ : 租赁期起止
+ */
+
+ private String BDCDZ;
+ private String KDSBZ;
+ private String CQZSH;
+ private String MJDW;
+ private String ZLQQZ;
+
+}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/HwysBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/HwysBO.java
new file mode 100644
index 00000000..f96fb249
--- /dev/null
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/HwysBO.java
@@ -0,0 +1,35 @@
+package com.dxhy.order.consumer.openapi.protocol.v6.order;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serializable;
+
+/**
+ * 数电信息-货物运输
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-03
+ */
+@Getter
+@Setter
+@ToString
+public class HwysBO implements Serializable {
+
+ /**
+ * XMXH : 明细序号
+ * QYD : 起运地
+ * DDD : 到达地
+ * YSGJZL : 运输工具种类
+ * YSGJPH : 运输工具牌号
+ * YSHWMC : 运输货物名称
+ */
+
+ private String XMXH;
+ private String QYD;
+ private String DDD;
+ private String YSGJZL;
+ private String YSGJPH;
+ private String YSHWMC;
+}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/JzfwBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/JzfwBO.java
new file mode 100644
index 00000000..db949231
--- /dev/null
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/JzfwBO.java
@@ -0,0 +1,31 @@
+package com.dxhy.order.consumer.openapi.protocol.v6.order;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.ToString;
+
+import java.io.Serializable;
+
+/**
+ * 数电信息-建筑服务信息
+ *
+ * @author: yaoxuguang
+ * @createDate: Created in 2023-07-24
+ */
+@Getter
+@Setter
+@ToString
+public class JzfwBO implements Serializable {
+
+ /**
+ * TDZZSXMBH : 土地增值税项目编号
+ * JZFWFSD : 建筑服务发生地
+ * JZFWMC : 建筑服务名称
+ * KDSBZ : 跨地(市)标志
+ */
+
+ private String TDZZSXMBH;
+ private String JZFWFSD;
+ private String JZFWMC;
+ private String KDSBZ;
+}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/QdTxxBO.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/QdTxxBO.java
index 1ce4b948..68248c8f 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/QdTxxBO.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/order/QdTxxBO.java
@@ -51,4 +51,8 @@ public class QdTxxBO implements Serializable {
private String SKYHZH;
private String YSXWFSD;
private List FJYSLIST;
+ private List HWYSLIST;
+ private BdczlBO BDCZLXX;
+ private BdcxsBO BDCXSXX;
+ private JzfwBO JZFWXX;
}
diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java
index b500b368..1869eb3b 100644
--- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java
+++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java
@@ -2056,7 +2056,7 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
/**
* 全电发票业务bean
*/
- List insertOrderInfoQd = buildOrderInfoQd(ddfpzxx);
+ List insertOrderInfoQd = buildOrderInfoQd(ddfpzxx,insertOrder.get(0));
/*
* 订单明细业务bean
@@ -4944,10 +4944,37 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
* @author yaoxuguang
* @date 2022-10-20
*/
- private List buildOrderInfoQd(DdfpzxxBO ddfpzxx) {
+ private List buildOrderInfoQd(DdfpzxxBO ddfpzxx, OrderInfo orderInfo) {
List orderInfoQdList = new ArrayList<>(5);
if (Objects.nonNull(ddfpzxx.getQDTXXBO())) {
OrderInfoQd orderInfoQd = BeanTransitionUtils.transitionOrderInfoQd(ddfpzxx.getQDTXXBO());
+ orderInfoQd.setId(DistributedKeyMaker.generateShotKey());
+ orderInfoQd.setOrderId(orderInfo.getId());
+ orderInfoQd.setProcessId(orderInfo.getProcessId());
+ orderInfoQd.setFpqqlsh(orderInfo.getFpqqlsh());
+ orderInfoQd.setXhfNsrsbh(orderInfo.getNsrsbh());
+ orderInfoQd.setCreateTime(new Date());
+ orderInfoQd.setUpdateTime(new Date());
+
+ if (CollectionUtil.isNotEmpty(orderInfoQd.getQdFjysList())) {
+ orderInfoQd.getQdFjysList().forEach(qdFjys -> {
+ qdFjys.setId(apiInvoiceCommonService.getGenerateShotKey());
+ qdFjys.setOrderInfoQdId(orderInfoQd.getId());
+ qdFjys.setCreateTime(new Date());
+ qdFjys.setUpdateTime(new Date());
+
+ });
+ }
+
+ if (CollectionUtil.isNotEmpty(orderInfoQd.getOrderInfoQdTdywList())) {
+ orderInfoQd.getOrderInfoQdTdywList().forEach(tdyw -> {
+ tdyw.setId(apiInvoiceCommonService.getGenerateShotKey());
+ tdyw.setOrderInfoQdId(orderInfoQd.getId());
+ tdyw.setXhfNsrsbh(orderInfoQd.getXhfNsrsbh());
+ tdyw.setCreateTime(new Date());
+ tdyw.setUpdateTime(new Date());
+ });
+ }
orderInfoQdList.add(orderInfoQd);
}
return orderInfoQdList;