diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/IInvoiceDistributeDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/IInvoiceDistributeDao.java new file mode 100644 index 00000000..1cad301f --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/IInvoiceDistributeDao.java @@ -0,0 +1,12 @@ +package com.hzya.frame.plugin.ht.dao; + +import com.hzya.frame.basedao.dao.IBaseDao; +import com.hzya.frame.plugin.ht.entity.BipProjectEntity; +import com.hzya.frame.plugin.ht.entity.InvoiceDistributeEntity; + +import java.util.List; + + +public interface IInvoiceDistributeDao extends IBaseDao { + +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/impl/InvoiceDistributeDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/impl/InvoiceDistributeDaoImpl.java new file mode 100644 index 00000000..8f44a410 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/dao/impl/InvoiceDistributeDaoImpl.java @@ -0,0 +1,12 @@ +package com.hzya.frame.plugin.ht.dao.impl; + +import com.hzya.frame.basedao.dao.MybatisGenericDao; +import com.hzya.frame.plugin.ht.dao.IInvoiceDistributeDao; +import com.hzya.frame.plugin.ht.entity.InvoiceDistributeEntity; +import org.springframework.stereotype.Repository; + + +@Repository(value = "invoiceDistributeDaoImpl") +public class InvoiceDistributeDaoImpl extends MybatisGenericDao implements IInvoiceDistributeDao { + +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.java new file mode 100644 index 00000000..a651be6d --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.java @@ -0,0 +1,8 @@ +package com.hzya.frame.plugin.ht.entity; + +import com.hzya.frame.web.entity.BaseEntity; + +public class InvoiceDistributeEntity extends BaseEntity { + + +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.xml new file mode 100644 index 00000000..002d5eb1 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/entity/InvoiceDistributeEntity.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/plugin/InvoiceDistributePluginInitializer.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/plugin/InvoiceDistributePluginInitializer.java index c7b33d34..ce693250 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/plugin/InvoiceDistributePluginInitializer.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/plugin/InvoiceDistributePluginInitializer.java @@ -24,6 +24,7 @@ import com.hzya.frame.mdm.mdmModuleSendLog.entity.MdmModuleSendLogEntity; import com.hzya.frame.mdm.service.IMdmServiceCache; import com.hzya.frame.plugin.ht.entity.ApplyInvoiceEntity; import com.hzya.frame.plugin.ht.service.IApplyInvoiceService; +import com.hzya.frame.plugin.ht.service.IInvoiceDistributeService; import com.hzya.frame.seeyon.invoice.dao.IInvoiceDao; import com.hzya.frame.seeyon.invoice.entity.InvoiceEntity; import com.hzya.frame.sys.sysenum.SysEnum; @@ -63,6 +64,8 @@ import java.util.*; public class InvoiceDistributePluginInitializer extends PluginBaseEntity { Logger logger = LoggerFactory.getLogger(getClass()); + @Resource + private IInvoiceDistributeService iInvoiceDistributeService; @Resource private IMdmModuleDistributeDetailDao mdmModuleDistributeDetailDao; @Resource @@ -173,6 +176,22 @@ public class InvoiceDistributePluginInitializer extends PluginBaseEntity { **/ @Override public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception { + try { + logger.info("======开始执行开票申请(中台蓝字,红字推送有度)同步========"); + return iInvoiceDistributeService.sendInvoiceDistribute(requestJson); + }catch (Exception e){ + logger.info("======执行开票申请(中台蓝字,红字推送有度)同步失败:{}========",e.getMessage()); + } + return null; + } + /*** + * 执行业务代码 + * @Author 👻👻👻👻👻👻👻👻 gjh + * @Date 2023-08-07 11:20 + * @param requestJson 执行业务代码的参数 + * @return void + **/ + public JsonResultEntity executeBusiness1(JSONObject requestJson) throws Exception { try{ //重试方法 if (null != requestJson) { diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/IInvoiceDistributeService.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/IInvoiceDistributeService.java new file mode 100644 index 00000000..af0514d2 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/IInvoiceDistributeService.java @@ -0,0 +1,19 @@ +package com.hzya.frame.plugin.ht.service; + +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.basedao.service.IBaseService; +import com.hzya.frame.plugin.ht.entity.InvoiceDistributeEntity; +import com.hzya.frame.web.entity.JsonResultEntity; + +public interface IInvoiceDistributeService extends IBaseService { + + + /** + * @Author lvleigang + * @Description 开票申请(中台蓝字,红字推送有度)同步 + * @Date 10:47 上午 2025/9/3 + * @param requestJson + * @return com.hzya.frame.web.entity.JsonResultEntity + **/ + JsonResultEntity sendInvoiceDistribute(JSONObject requestJson); +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/impl/InvoiceDistributeServiceImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/impl/InvoiceDistributeServiceImpl.java new file mode 100644 index 00000000..d7e1f359 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/ht/service/impl/InvoiceDistributeServiceImpl.java @@ -0,0 +1,99 @@ +package com.hzya.frame.plugin.ht.service.impl; + +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.basedao.service.impl.BaseService; +import com.hzya.frame.plugin.ht.dao.IInvoiceDistributeDao; +import com.hzya.frame.plugin.ht.entity.InvoiceDistributeEntity; +import com.hzya.frame.plugin.ht.service.IInvoiceDistributeService; +import com.hzya.frame.web.entity.BaseResult; +import com.hzya.frame.web.entity.JsonResultEntity; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import java.text.ParseException; + + +@Service(value = "invoiceDistributeServiceImpl") +public class InvoiceDistributeServiceImpl extends BaseService implements IInvoiceDistributeService { + + private IInvoiceDistributeDao iInvoiceDistributeDao; + @Value("${zt.url}") + private String url; + + @Autowired + public void setInvoiceDistributeDao(IInvoiceDistributeDao dao) { + this.iInvoiceDistributeDao = dao; + this.dao = dao; + } + + + /** + * @param requestJson + * @return com.hzya.frame.web.entity.JsonResultEntity + * @Author lvleigang + * @Description 开票申请(中台蓝字 , 红字推送有度)同步 + * @Date 10:47 上午 2025/9/3 + **/ + @Override + public JsonResultEntity sendInvoiceDistribute(JSONObject requestJson) { + logger.error("同步开票申请:" + requestJson.toJSONString()); + JSONObject jsonStr = requestJson.getJSONObject("jsonStr"); + if (jsonStr == null) { + return BaseResult.getFailureMessageEntity("系统错误"); + } + JSONObject businessDataStr = jsonStr.getJSONObject("businessDataStr"); + if (businessDataStr == null) { + return BaseResult.getFailureMessageEntity("系统错误"); + } + JSONObject mainData = businessDataStr.getJSONObject("formmain_0331"); + if (mainData == null) { + return BaseResult.getFailureMessageEntity("系统错误"); + } + JSONArray detailArray = businessDataStr.getJSONArray("formson_0700"); + + //组装发送数据 + JSONObject sendData = null; + try { + sendData = getSendData(mainData, detailArray); + } catch (ParseException e) { + e.printStackTrace(); + logger.error("推送开票申请失败:组装数据失败:" + e.getMessage()); + return BaseResult.getFailureMessageEntity("推送开票申请失败:组装数据失败"); + } + //发送数据 + logger.error("推送开票申请推送:" + sendData.toJSONString()); + + String tokenResult = HttpRequest.post(url). + header("appId", "800051"). + header("apiCode", "8000510012"). + header("publicKey", "ZJYAM2YFEIsIaI1e4wMagkS2Q7SFgGk0RvsPhEES45m/OVFCe7eDIk+3zDUT+v578prj"). + header("secretKey", "lR6+uf94mvNMclAB43oIwmhJSMDzQaViTkfXLeNvmGdpLfbFiUvbgbU+p43zO25Zj3JzOP8MtA1LSGvL+2BWG8c/o7DKi92S4mr3zcGearA="). + body(sendData.toJSONString()). + execute(). + body(); + logger.error("推送开票申请返回:" + tokenResult); + JSONObject resoutJson = JSONObject.parseObject(tokenResult); + if (resoutJson.getBoolean("flag")) { + return BaseResult.getSuccessMessageEntity("推送开票申请成功"); + } else { + return BaseResult.getFailureMessageEntity("推送开票申请失败:" + resoutJson.getString("msg")); + } + } + + /** + * @param mainData + * @param detailArray + * @return com.alibaba.fastjson.JSONObject + * @Author lvleigang + * @Description 组装数据 + * @Date 6:12 下午 2025/6/27 + **/ + private JSONObject getSendData(JSONObject mainData, JSONArray detailArray) throws ParseException { + JSONObject sendData = new JSONObject(); + + return sendData; + } +}