diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsLinesDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsLinesDao.java new file mode 100644 index 00000000..050ad160 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsLinesDao.java @@ -0,0 +1,7 @@ +package com.hzya.frame.plugin.dgx.oa.dao; + +import com.hzya.frame.basedao.dao.IBaseDao; +import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderDetailLinesEntity; + +public interface IPaymentDetailsLinesDao extends IBaseDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsUseLinesDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsUseLinesDao.java new file mode 100644 index 00000000..4640e1df --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentDetailsUseLinesDao.java @@ -0,0 +1,7 @@ +package com.hzya.frame.plugin.dgx.oa.dao; + +import com.hzya.frame.basedao.dao.IBaseDao; +import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderDetailsUseLinesEntity; + +public interface IPaymentDetailsUseLinesDao extends IBaseDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentOrderDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentOrderDao.java index 7e60a98e..778de3cc 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentOrderDao.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/IPaymentOrderDao.java @@ -3,8 +3,13 @@ package com.hzya.frame.plugin.dgx.oa.dao; import com.hzya.frame.basedao.dao.IBaseDao; import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderEntity; +import java.util.List; + public interface IPaymentOrderDao extends IBaseDao { - //将U9C付款单号回写OA - Integer updatePaymentOrderDocNo(PaymentOrderEntity paymentOrderEntity); + //更新付款单推送标识 + Integer updatePaymentOrderStatus(PaymentOrderEntity paymentOrderEntity); + + //重试方法 + List queryPaymentOrderRetry(PaymentOrderEntity paymentOrderEntity); } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDao.java index c2e4e7bf..8ec0c855 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDao.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDao.java @@ -1,10 +1,16 @@ package com.hzya.frame.plugin.dgx.oa.dao; +import com.baomidou.dynamic.datasource.annotation.DS; import com.hzya.frame.basedao.dao.IBaseDao; import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderEntity; +import java.util.List; + public interface ISalesOrderDao extends IBaseDao { - //将U9C销售订单号回写到OA - Integer updateSalesOrderDocNo(SalesOrderEntity salesOrderEntity); + //修改销售订单推送状态 + Integer updateSalesOrderStatus(SalesOrderEntity salesOrderEntity); + + //重试方法 + List querySalesOrderRetry(SalesOrderEntity salesOrder); } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDetailsDao.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDetailsDao.java new file mode 100644 index 00000000..a032065b --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/ISalesOrderDetailsDao.java @@ -0,0 +1,8 @@ +package com.hzya.frame.plugin.dgx.oa.dao; + +import com.hzya.frame.basedao.dao.IBaseDao; +import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderDetailsEntity; + + +public interface ISalesOrderDetailsDao extends IBaseDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsLinesDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsLinesDaoImpl.java new file mode 100644 index 00000000..bf417d13 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsLinesDaoImpl.java @@ -0,0 +1,10 @@ +package com.hzya.frame.plugin.dgx.oa.dao.impl; + +import com.hzya.frame.basedao.dao.MybatisGenericDao; +import com.hzya.frame.plugin.dgx.oa.dao.IPaymentDetailsLinesDao; +import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderDetailLinesEntity; +import org.springframework.stereotype.Repository; + +@Repository(value = "PaymentDetailsLinesDaoImpl") +public class PaymentDetailsLinesDaoImpl extends MybatisGenericDao implements IPaymentDetailsLinesDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsUseLinesDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsUseLinesDaoImpl.java new file mode 100644 index 00000000..1a7f6691 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentDetailsUseLinesDaoImpl.java @@ -0,0 +1,10 @@ +package com.hzya.frame.plugin.dgx.oa.dao.impl; + +import com.hzya.frame.basedao.dao.MybatisGenericDao; +import com.hzya.frame.plugin.dgx.oa.dao.IPaymentDetailsUseLinesDao; +import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderDetailsUseLinesEntity; +import org.springframework.stereotype.Repository; + +@Repository(value = "PaymentDetailsUseLinesDaoImpl") +public class PaymentDetailsUseLinesDaoImpl extends MybatisGenericDao implements IPaymentDetailsUseLinesDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentOrderDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentOrderDaoImpl.java index 3122704c..7055ca81 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentOrderDaoImpl.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/PaymentOrderDaoImpl.java @@ -1,15 +1,24 @@ package com.hzya.frame.plugin.dgx.oa.dao.impl; +import com.baomidou.dynamic.datasource.annotation.DS; import com.hzya.frame.basedao.dao.MybatisGenericDao; import com.hzya.frame.plugin.dgx.oa.dao.IPaymentOrderDao; import com.hzya.frame.plugin.dgx.oa.entity.PaymentOrderEntity; import org.springframework.stereotype.Repository; -@Repository(value = "PaymentOrderDaoImpl") +import java.util.List; + public class PaymentOrderDaoImpl extends MybatisGenericDao implements IPaymentOrderDao { @Override - public Integer updatePaymentOrderDocNo(PaymentOrderEntity paymentOrderEntity) { - return super.update("PaymentOrderEntity_update_DocNo",paymentOrderEntity); + @DS("#paymentOrderEntity.dataSourceCode") + public Integer updatePaymentOrderStatus(PaymentOrderEntity paymentOrderEntity) { + return super.update("PaymentOrderEntity_update_status",paymentOrderEntity); + } + + @Override + @DS("#paymentOrderEntity.dataSourceCode") + public List queryPaymentOrderRetry(PaymentOrderEntity paymentOrderEntity) { + return super.query("queryPaymentOrderRetry",paymentOrderEntity); } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDaoImpl.java index d23a202b..1e88e233 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDaoImpl.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDaoImpl.java @@ -1,14 +1,23 @@ package com.hzya.frame.plugin.dgx.oa.dao.impl; +import com.baomidou.dynamic.datasource.annotation.DS; import com.hzya.frame.basedao.dao.MybatisGenericDao; import com.hzya.frame.plugin.dgx.oa.dao.ISalesOrderDao; import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderEntity; import org.springframework.stereotype.Repository; -@Repository(value = "SalesOrderDaoImpl") +import java.util.List; + public class SalesOrderDaoImpl extends MybatisGenericDao implements ISalesOrderDao { @Override - public Integer updateSalesOrderDocNo(SalesOrderEntity salesOrderEntity) { - return super.update("SalesOrderEntity_update_DocNo",salesOrderEntity); + @DS("#salesOrderEntity.dataSourceCode") + public Integer updateSalesOrderStatus(SalesOrderEntity salesOrderEntity) { + return super.update("SalesOrderEntity_update_status",salesOrderEntity); + } + + @Override + @DS("#salesOrder.dataSourceCode") + public List querySalesOrderRetry(SalesOrderEntity salesOrder) { + return super.query("querySalesOrderRetry",salesOrder); } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDetailsDaoImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDetailsDaoImpl.java new file mode 100644 index 00000000..fe73676f --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/dao/impl/SalesOrderDetailsDaoImpl.java @@ -0,0 +1,10 @@ +package com.hzya.frame.plugin.dgx.oa.dao.impl; + +import com.hzya.frame.basedao.dao.MybatisGenericDao; +import com.hzya.frame.plugin.dgx.oa.dao.ISalesOrderDetailsDao; +import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderDetailsEntity; +import org.springframework.stereotype.Repository; + +@Repository(value = "SalesOrderDetailsDaoImpl") +public class SalesOrderDetailsDaoImpl extends MybatisGenericDao implements ISalesOrderDetailsDao { +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailLinesEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailLinesEntity.java new file mode 100644 index 00000000..bb469af0 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailLinesEntity.java @@ -0,0 +1,108 @@ +package com.hzya.frame.plugin.dgx.oa.entity; + +import com.hzya.frame.web.entity.BaseEntity; + +/** + * + * @content 付款单明细行 + * @Param + * @Return + * @Author hecan + * @Date 2024-11-13 16:33 + * **/ +public class PaymentOrderDetailLinesEntity extends BaseEntity { + + private String settlementMethodCode;//结算方式 + private String payBkAccCode;//付款银行账号 + private String payBACCode;//账户币种 + private String payBkSubAccount;//子账户 + private String payACCSettlementFee;//手续费 + private String lineNum;//行号 + private String cashAccountCode;//现金账号 + private String tradeDate;//回单日期 + + private String formmainId;//主表id + + private String settlementFee;//手续费 + + public String getSettlementFee() { + return settlementFee; + } + + public void setSettlementFee(String settlementFee) { + this.settlementFee = settlementFee; + } + + public String getFormmainId() { + return formmainId; + } + + public void setFormmainId(String formmainId) { + this.formmainId = formmainId; + } + + public String getSettlementMethodCode() { + return settlementMethodCode; + } + + public void setSettlementMethodCode(String settlementMethodCode) { + this.settlementMethodCode = settlementMethodCode; + } + + public String getPayBkAccCode() { + return payBkAccCode; + } + + public void setPayBkAccCode(String payBkAccCode) { + this.payBkAccCode = payBkAccCode; + } + + public String getPayBACCode() { + return payBACCode; + } + + public void setPayBACCode(String payBACCode) { + this.payBACCode = payBACCode; + } + + public String getPayBkSubAccount() { + return payBkSubAccount; + } + + public void setPayBkSubAccount(String payBkSubAccount) { + this.payBkSubAccount = payBkSubAccount; + } + + public String getPayACCSettlementFee() { + return payACCSettlementFee; + } + + public void setPayACCSettlementFee(String payACCSettlementFee) { + this.payACCSettlementFee = payACCSettlementFee; + } + + public String getLineNum() { + return lineNum; + } + + public void setLineNum(String lineNum) { + this.lineNum = lineNum; + } + + public String getCashAccountCode() { + return cashAccountCode; + } + + public void setCashAccountCode(String cashAccountCode) { + this.cashAccountCode = cashAccountCode; + } + + public String getTradeDate() { + return tradeDate; + } + + public void setTradeDate(String tradeDate) { + this.tradeDate = tradeDate; + } + +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsLinesEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsLinesEntity.xml new file mode 100644 index 00000000..ac049ca8 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsLinesEntity.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + id, + formmain_id as formmainId, + field0002 as settlementMethodCode, -- 结算方式 +field0005 as settlementFee, -- 手续费 +field0007 as payBkAccCode, -- 付款银行账号 +field0008 as payBACCode, -- 账户币种 +field0009 as payBkSubAccount, -- 子账户 +field0005 as payACCSettlementFee, -- 手续费 +field0001 as lineNum, -- 行号 +field0010 as cashAccountCode, -- 现金账号 +field0011 as tradeDate -- 回单日期 + + + + + + + +update formson_0654 set + + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_user_id = #{modify_user_id}, + modify_time = #{modify_time}, + sts = #{sts}, + org_id = #{org_id}, + +where id = #{id} + + + + + update formson_0654 set xxx={docNo} where id= #{id} + + + diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.java new file mode 100644 index 00000000..979f2d16 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.java @@ -0,0 +1,179 @@ +package com.hzya.frame.plugin.dgx.oa.entity; + +import com.hzya.frame.web.entity.BaseEntity; + +/** + * + * @content 付款单用途 + * @Param + * @Return + * @Author hecan + * @Date 2024-11-13 16:36 + * **/ +public class PaymentOrderDetailsUseLinesEntity extends BaseEntity { + private String payProperty;// 用途 + private String money;// 金额 + private String lineNum;// 行号 + private String suppCode;// 代付供应商 + private String suppName;// 代付供应商名称 + private String suppSiteCode;// 代付供应商位置 + private String suppSiteName;// 代付供应商位置名称 + private String deptCode;// 部门 + private String transactorCode;// 业务员 + private String projectCode;// 项目 + private String incExpItemCode;// 收支项目 + private String itemMasterCode;// 料品 + private String custCode;// 代付客户 + private String custName;// 代付客户名称 + private String custSiteCode;// 代付客户位置 + private String custSiteName;// 代付客户位置名称 + + private String formmainId;//主表id + + private String maturity;//到期日 + + public String getMaturity() { + return maturity; + } + + public void setMaturity(String maturity) { + maturity = maturity; + } + + public String getFormmainId() { + return formmainId; + } + + public void setFormmainId(String formmainId) { + this.formmainId = formmainId; + } + + public String getPayProperty() { + return payProperty; + } + + public void setPayProperty(String payProperty) { + this.payProperty = payProperty; + } + + public String getMoney() { + return money; + } + + public void setMoney(String money) { + this.money = money; + } + + public String getLineNum() { + return lineNum; + } + + public void setLineNum(String lineNum) { + this.lineNum = lineNum; + } + + public String getSuppCode() { + return suppCode; + } + + public void setSuppCode(String suppCode) { + this.suppCode = suppCode; + } + + public String getSuppName() { + return suppName; + } + + public void setSuppName(String suppName) { + this.suppName = suppName; + } + + public String getSuppSiteCode() { + return suppSiteCode; + } + + public void setSuppSiteCode(String suppSiteCode) { + this.suppSiteCode = suppSiteCode; + } + + public String getSuppSiteName() { + return suppSiteName; + } + + public void setSuppSiteName(String suppSiteName) { + this.suppSiteName = suppSiteName; + } + + + public String getDeptCode() { + return deptCode; + } + + public void setDeptCode(String deptCode) { + this.deptCode = deptCode; + } + + public String getTransactorCode() { + return transactorCode; + } + + public void setTransactorCode(String transactorCode) { + this.transactorCode = transactorCode; + } + + public String getProjectCode() { + return projectCode; + } + + public void setProjectCode(String projectCode) { + this.projectCode = projectCode; + } + + public String getIncExpItemCode() { + return incExpItemCode; + } + + public void setIncExpItemCode(String incExpItemCode) { + this.incExpItemCode = incExpItemCode; + } + + public String getItemMasterCode() { + return itemMasterCode; + } + + public void setItemMasterCode(String itemMasterCode) { + this.itemMasterCode = itemMasterCode; + } + + public String getCustCode() { + return custCode; + } + + public void setCustCode(String custCode) { + this.custCode = custCode; + } + + public String getCustName() { + return custName; + } + + public void setCustName(String custName) { + this.custName = custName; + } + + public String getCustSiteCode() { + return custSiteCode; + } + + public void setCustSiteCode(String custSiteCode) { + this.custSiteCode = custSiteCode; + } + + public String getCustSiteName() { + return custSiteName; + } + + public void setCustSiteName(String custSiteName) { + this.custSiteName = custSiteName; + } +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.xml new file mode 100644 index 00000000..5aa0fc0d --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderDetailsUseLinesEntity.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id , + formmain_id as formmainId, + field0058 as payProperty , -- 用途 +field0052 as money, -- 金额 +field0047 as lineNum, -- 行号 +field0048 as suppCode, -- 代付供应商 +field0085 as SuppName, -- 代付供应商名称 +field0086 as SuppSiteCode, -- 代付供应商位置 +field0087 as SuppSiteName, -- 代付供应商位置名称 +field0088 as CustCode, -- 代付客户 +field0089 as CustName, -- 代付客户名称 +field0090 as CustSiteCode, -- 代付客户位置 +field0091 as CustSiteName, -- 代付客户位置名称 +field0099 as deptCode, -- 部门 +field0098 as transactorCode, -- 业务员 +field0097 as projectCode,-- 项目 +field0072 as incExpItemCode, -- 收支项目 +field0064 as Maturity, -- 到期日 +field0070 as itemMasterCode -- 料号 + + + + + + + +update formson_0655 set + + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_user_id = #{modify_user_id}, + modify_time = #{modify_time}, + sts = #{sts}, + org_id = #{org_id}, + +where id = #{id} + + + + + update formson_0655 set xxx={docNo} where id= #{id} + + + diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.java index ab829152..949beba1 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.java @@ -15,6 +15,33 @@ import java.util.List; public class PaymentOrderEntity extends BaseEntity { private String docNo;//单号 + private String pCCode;//币种 + private String payDate;//付款日期 + private String documentTypeCode;//单据类型 + private String suppCode;//供应商 + private String suppName;//供应商名称 + private String suppSiteCode;//供应商位置 + private String suppSiteName;//供应商位置名称 + private String custCode;//客户 + private String custName;//客户名称 + private String custSiteCode;//客户位置 + private String custSiteName;//客户位置名称 + private String payObjType;//付款对象 + private String deptCode;//部门 + private String projectCode;//项目 + private String srcBillOrgCode;//来源组织 + private String transactorCode;//业务员 + private String note;//备注 + + private String pushStatus;//推送状态 + + public String getPushStatus() { + return pushStatus; + } + + public void setPushStatus(String pushStatus) { + this.pushStatus = pushStatus; + } public String getDocNo() { return docNo; @@ -23,4 +50,140 @@ public class PaymentOrderEntity extends BaseEntity { public void setDocNo(String docNo) { this.docNo = docNo; } + + public String getpCCode() { + return pCCode; + } + + public void setpCCode(String pCCode) { + this.pCCode = pCCode; + } + + public String getPayDate() { + return payDate; + } + + public void setPayDate(String payDate) { + this.payDate = payDate; + } + + public String getDocumentTypeCode() { + return documentTypeCode; + } + + public void setDocumentTypeCode(String documentTypeCode) { + this.documentTypeCode = documentTypeCode; + } + + public String getSuppCode() { + return suppCode; + } + + public void setSuppCode(String suppCode) { + this.suppCode = suppCode; + } + + public String getSuppName() { + return suppName; + } + + public void setSuppName(String suppName) { + this.suppName = suppName; + } + + public String getSuppSiteCode() { + return suppSiteCode; + } + + public void setSuppSiteCode(String suppSiteCode) { + this.suppSiteCode = suppSiteCode; + } + + public String getSuppSiteName() { + return suppSiteName; + } + + public void setSuppSiteName(String suppSiteName) { + this.suppSiteName = suppSiteName; + } + + public String getCustCode() { + return custCode; + } + + public void setCustCode(String custCode) { + this.custCode = custCode; + } + + public String getCustName() { + return custName; + } + + public void setCustName(String custName) { + this.custName = custName; + } + + public String getCustSiteCode() { + return custSiteCode; + } + + public void setCustSiteCode(String custSiteCode) { + this.custSiteCode = custSiteCode; + } + + public String getCustSiteName() { + return custSiteName; + } + + public void setCustSiteName(String custSiteName) { + this.custSiteName = custSiteName; + } + + public String getPayObjType() { + return payObjType; + } + + public void setPayObjType(String payObjType) { + this.payObjType = payObjType; + } + + public String getDeptCode() { + return deptCode; + } + + public void setDeptCode(String deptCode) { + this.deptCode = deptCode; + } + + public String getProjectCode() { + return projectCode; + } + + public void setProjectCode(String projectCode) { + this.projectCode = projectCode; + } + + public String getSrcBillOrgCode() { + return srcBillOrgCode; + } + + public void setSrcBillOrgCode(String srcBillOrgCode) { + this.srcBillOrgCode = srcBillOrgCode; + } + + public String getTransactorCode() { + return transactorCode; + } + + public void setTransactorCode(String transactorCode) { + this.transactorCode = transactorCode; + } + + public String getNote() { + return note; + } + + public void setNote(String note) { + this.note = note; + } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.xml index 3ef6691c..1b251794 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.xml +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/PaymentOrderEntity.xml @@ -2,9 +2,27 @@ - + + + + + + + + + + + + + + + + + + + @@ -15,12 +33,77 @@ - + main.id as id, + main.field0021 as docNo,-- 单号 +main.field0102 as pCCode, -- 币种 +main.field0025 as payDate, -- 付款日期 +main.field0104 as documentTypeCode, -- 单据类型 +main.field0030 as suppCode, -- 供应商 +main.field0078 as SuppName, -- 供应商名称 +main.field0019 as suppSiteCode,-- 供应商位置 +main.field0079 as SuppSiteName , -- 供应商位置名称 +main.field0080 as CustCode, -- 客户 +main.field0081 as CustName, -- 客户名称 +main.field0082 as CustSiteCode ,-- 客户位置 +main.field0083 as CustSiteName,-- 客户位置名称 +main.field0084 as Note,-- 备注 +main.field0092 as pushStatus,-- 推送标识 +main.field0027 as payObjType,-- 付款对象 +main.field0101 as deptCode, -- 部门 +main.field0095 as projectCode, -- 项目 +main.field0103 as srcBillOrgCode, -- 来源组织 +main.field0100 as transactorCode -- 业务员 + + + + + + -update formmain_0673 set +update formmain_0653 set create_user_id = #{create_user_id}, create_time = #{create_time}, @@ -32,9 +115,9 @@ update formmain_0673 set where id = #{id} - - - update formmain_0673 set xxx={docNo} where id= #{id} + + + update formmain_0653 set field0092=#{pushStatus} where id= #{id} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.java new file mode 100644 index 00000000..1821b264 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.java @@ -0,0 +1,178 @@ +package com.hzya.frame.plugin.dgx.oa.entity; + +import com.hzya.frame.web.entity.BaseEntity; +/** + * + * @content 销售订单明细 + * @Param + * @Return + * @Author hecan + * @Date 2024-11-13 16:23 + * **/ +public class SalesOrderDetailsEntity extends BaseEntity { + private String docLineNo;//行号 + private String itemCode;//料号 + private String freeType;//免费品类型 + private String orderByQtyTU;//数量 + private String tU;//销售单位编码 + private String finallyPriceTC;//最终价 + private String taxSchedule;//税组合 + private String shipTogetherFlag;//成套发货标志 + private String memo;//备注 + private String privateDescSeg1;//是否处理 + private String privateDescSeg2;//项目明细 + private String privateDescSeg5;//厂区明细id + private String pubDescSeg1;//合同号明细 + private String docSubLineNo;//行号 + private String requireDate;//交期 + private String demandType;//需求分类 + + private String recTermCode;//收款条件 + + private String formmainId; // 主表id + + public String getRecTermCode() { + return recTermCode; + } + + public void setRecTermCode(String recTermCode) { + this.recTermCode = recTermCode; + } + + public String getDocLineNo() { + return docLineNo; + } + + public void setDocLineNo(String docLineNo) { + this.docLineNo = docLineNo; + } + + public String getItemCode() { + return itemCode; + } + + public void setItemCode(String itemCode) { + this.itemCode = itemCode; + } + + public String getFreeType() { + return freeType; + } + + public void setFreeType(String freeType) { + this.freeType = freeType; + } + + public String getOrderByQtyTU() { + return orderByQtyTU; + } + + public void setOrderByQtyTU(String orderByQtyTU) { + this.orderByQtyTU = orderByQtyTU; + } + + public String gettU() { + return tU; + } + + public void settU(String tU) { + this.tU = tU; + } + + public String getFinallyPriceTC() { + return finallyPriceTC; + } + + public void setFinallyPriceTC(String finallyPriceTC) { + this.finallyPriceTC = finallyPriceTC; + } + + public String getTaxSchedule() { + return taxSchedule; + } + + public void setTaxSchedule(String taxSchedule) { + this.taxSchedule = taxSchedule; + } + + public String getShipTogetherFlag() { + return shipTogetherFlag; + } + + public void setShipTogetherFlag(String shipTogetherFlag) { + this.shipTogetherFlag = shipTogetherFlag; + } + + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + + + public String getPrivateDescSeg1() { + return privateDescSeg1; + } + + public void setPrivateDescSeg1(String privateDescSeg1) { + this.privateDescSeg1 = privateDescSeg1; + } + + public String getPrivateDescSeg2() { + return privateDescSeg2; + } + + public void setPrivateDescSeg2(String privateDescSeg2) { + this.privateDescSeg2 = privateDescSeg2; + } + + public String getPrivateDescSeg5() { + return privateDescSeg5; + } + + public void setPrivateDescSeg5(String privateDescSeg5) { + this.privateDescSeg5 = privateDescSeg5; + } + + public String getPubDescSeg1() { + return pubDescSeg1; + } + + public void setPubDescSeg1(String pubDescSeg1) { + this.pubDescSeg1 = pubDescSeg1; + } + + public String getDocSubLineNo() { + return docSubLineNo; + } + + public void setDocSubLineNo(String docSubLineNo) { + this.docSubLineNo = docSubLineNo; + } + + public String getRequireDate() { + return requireDate; + } + + public void setRequireDate(String requireDate) { + this.requireDate = requireDate; + } + + public String getDemandType() { + return demandType; + } + + public void setDemandType(String demandType) { + this.demandType = demandType; + } + + public String getFormmainId() { + return formmainId; + } + + public void setFormmainId(String formmainId) { + this.formmainId = formmainId; + } +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.xml new file mode 100644 index 00000000..a127e534 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderDetailsEntity.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +id as id, + formmain_id as formmainId, + field0021 as docLineNo,-- 行号 +field0028 as itemCode, -- 料号 +field0034 as freeType, -- 免费品类型 +field0031 as orderByQtyTU, -- 数量 +field0032 as tU, -- 销售单位编码 +field0036 as finallyPriceTC,-- 最终价 +field0067 as taxSchedule,-- 税组合编码 +field0042 as memo, -- 备注 +field0022 as privateDescSeg1, -- 是否处理 +field0065 as privateDescSeg2, -- 项目明细编码 +field0070 as privateDescSeg5, -- 厂区明细编码 +field0023 as pubDescSeg1, -- 合同号明细 +field0033 as requireDate, -- 交期 +field0056 as recTermCode, -- 收款条件 +field0066 as demandType -- 需求分类编码 + + + + + + + +update formson_0668 set + + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_user_id = #{modify_user_id}, + modify_time = #{modify_time}, + sts = #{sts}, + org_id = #{org_id}, + +where id = #{id} + + + + + update formson_0668 set xxx={docNo} where id= #{id} + + + diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.java index 99b65c92..804f14bf 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.java @@ -15,7 +15,55 @@ import java.util.List; * **/ public class SalesOrderEntity extends BaseEntity { + private String documentType;//单据类型 private String docNo;//单号 + private String orderBy;//客户 + private String businessDate;//日期 + private String saleDepartment;//部门 + private String seller;//业务员 + private String isPriceIncludeTax;//价格是否含税 + private String memo;//备注 + private String confirmTermCode;//立账条件 + private String pubDescSeg1;//合同号 + private String pubDescSeg5;//厂区 + private String pubDescSeg6;//贸易方式 + + private String recTermCode;//收款条件 + + private String pushStatus;//推送状态 + private String project;//项目编码 + + public String getProject() { + return project; + } + + public void setProject(String project) { + this.project = project; + } + + public String getRecTermCode() { + return recTermCode; + } + + public void setRecTermCode(String recTermCode) { + this.recTermCode = recTermCode; + } + + public String getPushStatus() { + return pushStatus; + } + + public void setPushStatus(String pushStatus) { + this.pushStatus = pushStatus; + } + + public String getDocumentType() { + return documentType; + } + + public void setDocumentType(String documentType) { + this.documentType = documentType; + } public String getDocNo() { return docNo; @@ -24,4 +72,84 @@ public class SalesOrderEntity extends BaseEntity { public void setDocNo(String docNo) { this.docNo = docNo; } + + public String getOrderBy() { + return orderBy; + } + + public void setOrderBy(String orderBy) { + this.orderBy = orderBy; + } + + public String getBusinessDate() { + return businessDate; + } + + public void setBusinessDate(String businessDate) { + this.businessDate = businessDate; + } + + public String getSaleDepartment() { + return saleDepartment; + } + + public void setSaleDepartment(String saleDepartment) { + this.saleDepartment = saleDepartment; + } + + public String getSeller() { + return seller; + } + + public void setSeller(String seller) { + this.seller = seller; + } + + public String getIsPriceIncludeTax() { + return isPriceIncludeTax; + } + + public void setIsPriceIncludeTax(String isPriceIncludeTax) { + this.isPriceIncludeTax = isPriceIncludeTax; + } + + public String getMemo() { + return memo; + } + + public void setMemo(String memo) { + this.memo = memo; + } + + public String getConfirmTermCode() { + return confirmTermCode; + } + + public void setConfirmTermCode(String confirmTermCode) { + this.confirmTermCode = confirmTermCode; + } + + public String getPubDescSeg1() { + return pubDescSeg1; + } + + public void setPubDescSeg1(String pubDescSeg1) { + this.pubDescSeg1 = pubDescSeg1; + } + + public String getPubDescSeg5() { + return pubDescSeg5; + } + + public void setPubDescSeg5(String pubDescSeg5) { + this.pubDescSeg5 = pubDescSeg5; + } + + public String getPubDescSeg6() { + return pubDescSeg6; + } + + public void setPubDescSeg6(String pubDescSeg6) { + this.pubDescSeg6 = pubDescSeg6; + } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.xml b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.xml index fa11448b..61ce256a 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.xml +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/entity/SalesOrderEntity.xml @@ -4,7 +4,21 @@ + + + + + + + + + + + + + + @@ -15,12 +29,72 @@ - + main.id, + main.field0071 as documentType, -- 单据类型 + main.field0005 as docNo, -- 单号 + main.field0064 as orderBy,-- 客户编码 + main.field0017 as businessDate,-- 日期 + main.field0057 as saleDepartment,-- 部门编码 + main.field0059 as seller,-- 业务员编码 + main.field0020 as memo,-- 备注 + main.field0061 as confirmTermCode,-- 立账条件编码 + main.field0019 as recTermCode, -- 收款条件 + main.field0003 as pubDescSeg1,-- 合同号 + main.field0069 as pubDescSeg5,-- 厂区编码 + main.field0068 as pubDescSeg6,-- 贸易方式 + main.field0062 as project,-- 项目编码 + main.field0054 as pushStatus -- 推送状态 + + + + + + -update formmain_0666 set +update formmain_0667 set create_user_id = #{create_user_id}, create_time = #{create_time}, @@ -32,9 +106,9 @@ update formmain_0666 set where id = #{id} - - - update formmain_0666 set xxx={docNo} where id= #{id} + + + update formmain_0667 set field0054=#{pushStatus} where id= #{id} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/PaymentOrderPluginInitializer.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/PaymentOrderPluginInitializer.java new file mode 100644 index 00000000..f44a30eb --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/PaymentOrderPluginInitializer.java @@ -0,0 +1,94 @@ +package com.hzya.frame.plugin.dgx.oa.plugin; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.base.PluginBaseEntity; +import com.hzya.frame.plugin.dgx.oa.service.impl.PaymentOrderServiceImpl; +import com.hzya.frame.plugin.dgx.oa.service.impl.SalesOrderServiceImpl; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.entity.IntegrationTaskLivingDetailsEntity; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.service.impl.IntegrationTaskLivingDetailsServiceImpl; +import com.hzya.frame.web.entity.BaseResult; +import com.hzya.frame.web.entity.JsonResultEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * + * @content OA付款单推送德广信U9C + * @Param + * @Return + * @Author hecan + * @Date 2024-11-14 9:55 + * **/ +public class PaymentOrderPluginInitializer extends PluginBaseEntity { + Logger logger = LoggerFactory.getLogger(getClass()); + + @Autowired + private PaymentOrderServiceImpl paymentOrderServiceImpl; + @Autowired + private IntegrationTaskLivingDetailsServiceImpl taskLivingDetailsService; + + + @Override + public void initialize() { + logger.info(getPluginLabel() + "執行初始化方法initialize()"); + } + + @Override + public void destroy() { + logger.info(getPluginLabel() + "執行銷毀方法destroy()"); + } + + @Override + public String getPluginId() { + return "PaymentOrderPluginInitializer"; + } + + @Override + public String getPluginName() { + return "OA付款单推送德广信U9C插件"; + } + + @Override + public String getPluginLabel() { + return "OA付款单推送德广信U9C插件"; + } + + @Override + public String getPluginType() { + return "1"; + } + + @Override + public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception { + try { + if(null !=requestJson){ + //如果不为空,说明是重试 + String taskDetailsId = requestJson.getString("integration_task_living_details_id"); + logger.info("======德广信付款单重试得integration_task_living_details_id为:{}=====",taskDetailsId); + if(StrUtil.isNotEmpty(taskDetailsId)){ + logger.info("=========开始在plugin中执行付款单重试推送U9C====="); + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = taskLivingDetailsService.get(taskDetailsId); + if(null != integrationTaskLivingDetailsEntity && StrUtil.isNotEmpty(integrationTaskLivingDetailsEntity.getRootAppPk())){ + logger.info("=======德广信付款单重试查询出得json为:{}=====", integrationTaskLivingDetailsEntity.getRootAppPk()); + requestJson.put("id",integrationTaskLivingDetailsEntity.getRootAppPk()); + requestJson.put("details_id",integrationTaskLivingDetailsEntity.getId()); + } + } + logger.info("=========开始在plugin中执行付款单推送U9C====="); + JsonResultEntity jsonResultEntity = paymentOrderServiceImpl.queryPaymentOrderToU9C(requestJson); + if(jsonResultEntity.getStatus().equals("200")){ + return BaseResult.getSuccessMessageEntity(getPluginName()+"执行成功"); + }else{ + return BaseResult.getFailureMessageEntity(getPluginName()+"执行失败"); + } + } + }catch (Exception e){ + logger.info("=====plugin中执行付款单推送U9C失败:{}",e.getMessage()); + return BaseResult.getFailureMessageEntity(getPluginName()+"执行失败"); + } + return null; + } +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/SalesOrderPluginInitializer.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/SalesOrderPluginInitializer.java new file mode 100644 index 00000000..7699d496 --- /dev/null +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/plugin/SalesOrderPluginInitializer.java @@ -0,0 +1,94 @@ +package com.hzya.frame.plugin.dgx.oa.plugin; + +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.base.PluginBaseEntity; +import com.hzya.frame.plugin.dgx.oa.service.impl.SalesOrderServiceImpl; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.entity.IntegrationTaskLivingDetailsEntity; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.service.impl.IntegrationTaskLivingDetailsServiceImpl; +import com.hzya.frame.web.entity.BaseResult; +import com.hzya.frame.web.entity.JsonResultEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * + * @content OA销售订单推送U9C + * @Param + * @Return + * @Author hecan + * @Date 2024-11-14 9:40 + * **/ +public class SalesOrderPluginInitializer extends PluginBaseEntity { + + Logger logger = LoggerFactory.getLogger(getClass()); + + @Autowired + private SalesOrderServiceImpl salesOrderServiceimple; + + @Autowired + private IntegrationTaskLivingDetailsServiceImpl taskLivingDetailsService; + + @Override + public void initialize() { + logger.info(getPluginLabel() + "執行初始化方法initialize()"); + } + + @Override + public void destroy() { + logger.info(getPluginLabel() + "執行銷毀方法destroy()"); + } + + @Override + public String getPluginId() { + return "SalesOrderPluginInitializer"; + } + + @Override + public String getPluginName() { + return "OA销售订单推送德广信U9C插件"; + } + + @Override + public String getPluginLabel() { + return "OA销售订单推送德广信U9C插件"; + } + + @Override + public String getPluginType() { + return "1"; + } + + @Override + public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception { + try { + if(null !=requestJson){ + //如果不为空,说明是重试 + String taskDetailsId = requestJson.getString("integration_task_living_details_id"); + logger.info("======德广信销售订单重试得integration_task_living_details_id为:{}=====",taskDetailsId); + if(StrUtil.isNotEmpty(taskDetailsId)){ + logger.info("=========开始在plugin中执行销售订单重试推送U9C====="); + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = taskLivingDetailsService.get(taskDetailsId); + if(null != integrationTaskLivingDetailsEntity && StrUtil.isNotEmpty(integrationTaskLivingDetailsEntity.getRootAppPk())){ + logger.info("=======德广信销售订单重试查询出得源系统id为:{}=====", integrationTaskLivingDetailsEntity.getRootAppPk()); + requestJson.put("id",integrationTaskLivingDetailsEntity.getRootAppPk()); + requestJson.put("details_id",integrationTaskLivingDetailsEntity.getId()); + } + } + logger.info("=========开始在plugin中执行销售订单推送U9C====="); + JsonResultEntity jsonResultEntity = salesOrderServiceimple.querySalesOrderToU9C(requestJson); + if(jsonResultEntity.getStatus().equals("200")){ + return BaseResult.getSuccessMessageEntity(getPluginName()+"执行成功"); + }else{ + return BaseResult.getFailureMessageEntity(getPluginName()+"执行失败"); + } + } + }catch (Exception e){ + logger.info("=====plugin中执行销售订单推送U9C失败:{}",e.getMessage()); + return BaseResult.getFailureMessageEntity(getPluginName()+"执行失败"); + } + return null; + } +} diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/IPaymentOrderService.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/IPaymentOrderService.java index 6d5ca083..fa3b8a0d 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/IPaymentOrderService.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/IPaymentOrderService.java @@ -2,6 +2,7 @@ package com.hzya.frame.plugin.dgx.oa.service; import com.alibaba.fastjson.JSONObject; import com.hzya.frame.basedao.service.IBaseService; +import com.hzya.frame.web.entity.JsonResultEntity; public interface IPaymentOrderService extends IBaseService { @@ -13,7 +14,7 @@ public interface IPaymentOrderService extends IBaseService { * @Author hecan * @Date 2024-09-06 15:32 * **/ - Object queryPaymentOrderToU9C(JSONObject json); + JsonResultEntity queryPaymentOrderToU9C(JSONObject json); /** * diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/ISalesOrderService.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/ISalesOrderService.java index 1605ed61..51ea9973 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/ISalesOrderService.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/ISalesOrderService.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject; import com.hzya.frame.basedao.service.IBaseService; import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderEntity; import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; +import com.hzya.frame.web.entity.JsonResultEntity; public interface ISalesOrderService extends IBaseService { @@ -15,25 +16,6 @@ public interface ISalesOrderService extends IBaseService query = null; + if(StrUtil.isNotEmpty(json.getString("id"))){ + paymentOrderEntity.setId(json.getString("id")); + query=paymentOrderDao.queryPaymentOrderRetry(paymentOrderEntity); + }else{ + query= paymentOrderDao.query(paymentOrderEntity); + } + if(CollectionUtils.isEmpty(query)){ + logger.info("====OA中没有已审核得付款单传递U9C===="); + return BaseResult.getSuccessMessageEntity("查询成功",null); + } + for (PaymentOrderEntity orderEntity : query) { + orderEntity.setDataSourceCode(sourceCode); + JSONObject jsonMain=new JSONObject(); + jsonMain.put("DocNo",orderEntity.getDocNo());//单号 + jsonMain.put("PCCode",orderEntity.getpCCode()==null?"C001":orderEntity.getpCCode());//币种 + jsonMain.put("PayDate",orderEntity.getPayDate());//付款日期 + jsonMain.put("DocumentTypeCode",orderEntity.getDocumentTypeCode());//单据类型 + jsonMain.put("SuppCode",orderEntity.getSuppCode());//供应商 + jsonMain.put("SuppName",orderEntity.getSuppName());//供应商名称 + jsonMain.put("SuppSiteCode",orderEntity.getSuppSiteCode());//供应商位置 + jsonMain.put("SuppSiteName",orderEntity.getSuppSiteName());//供应商位置名称 + jsonMain.put("CustCode",orderEntity.getCustCode());//客户 + jsonMain.put("CustName",orderEntity.getCustName());//客户名称 + jsonMain.put("CustSiteCode",orderEntity.getCustSiteCode());//客户位置 + jsonMain.put("CustSiteName",orderEntity.getCustSiteName());//客户位置名称 + String payObjType=null; + if(orderEntity.getPayObjType().equals("2744088252311683800")){ + payObjType="0";//客户 2744088252311683800 + }else{ + payObjType="1";//供应商 + } + jsonMain.put("PayObjType",payObjType);//付款对象 + jsonMain.put("DeptCode",orderEntity.getDeptCode());//部门 + jsonMain.put("ProjectCode",orderEntity.getProjectCode());//项目 + jsonMain.put("SrcBillOrgCode",orderEntity.getSrcBillOrgCode());//来源组织 + jsonMain.put("TransactorCode",orderEntity.getTransactorCode());//业务员 + jsonMain.put("Note",orderEntity.getNote());//备注 + JSONArray jsonArray=new JSONArray(); + PaymentOrderDetailLinesEntity paymentOrderDetailLinesEntity=new PaymentOrderDetailLinesEntity(); + paymentOrderDetailLinesEntity.setFormmainId(orderEntity.getId()); + paymentOrderDetailLinesEntity.setDataSourceCode(sourceCode); + List paymentOrderDetailLinesEntities = paymentDetailsLinesDao.query(paymentOrderDetailLinesEntity); + if(CollectionUtils.isEmpty(paymentOrderDetailLinesEntities)){ + logger.info("====OA中查询出来得付款单明细行为空===="); + jsonMain.put("PayBillLines",jsonArray); + }else{ + for (PaymentOrderDetailLinesEntity orderDetailLinesEntity : paymentOrderDetailLinesEntities) { + JSONObject jsonDetails=new JSONObject(); + String settlementMethodCode=null; + if(orderDetailLinesEntity.getSettlementMethodCode().equals("-7937303392876737290")){ + settlementMethodCode="YZ01";//现金 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("920692801377095260")){ + settlementMethodCode="YZ02";//银行 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("-8115207479941119383")){ + settlementMethodCode="YZ03";//信用证 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("823764250156614494")){ + settlementMethodCode="YZ04";//银行承兑汇票 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("8845367011189605014")){ + settlementMethodCode="YZ05";//商业承兑汇票 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("4478413944029466492")){ + settlementMethodCode="YZ06";//电汇 + }else if(orderDetailLinesEntity.getSettlementMethodCode().equals("-8705002786699392279")){ + settlementMethodCode="YZ07";//银行承兑汇票-票据池 + } + jsonDetails.put("SettlementMethodCode",settlementMethodCode);//结算方式 + jsonDetails.put("PayBkAccCode",orderDetailLinesEntity.getPayBkAccCode());//付款银行账号 + jsonDetails.put("PayBACCode",orderDetailLinesEntity.getPayBACCode());//账户币种 + jsonDetails.put("PayBkSubAccount",orderDetailLinesEntity.getPayBkSubAccount());//子账户 + jsonDetails.put("PayACCSettlementFee",orderDetailLinesEntity.getPayACCSettlementFee());//手续费 + jsonDetails.put("LineNum",orderDetailLinesEntity.getLineNum());//行号 + jsonDetails.put("CashAccountCode",orderDetailLinesEntity.getCashAccountCode());//现金账号 + jsonDetails.put("TradeDate",orderDetailLinesEntity.getTradeDate());//回单日期 + JSONArray jsonArrayUseLine=new JSONArray(); + PaymentOrderDetailsUseLinesEntity paymentOrderDetailsUseLinesEntity=new PaymentOrderDetailsUseLinesEntity(); + paymentOrderDetailsUseLinesEntity.setFormmainId(orderEntity.getId()); + paymentOrderDetailsUseLinesEntity.setDataSourceCode(sourceCode); + List paymentOrderDetailsUseLinesEntities = paymentDetailsUseLinesDao.query(paymentOrderDetailsUseLinesEntity); + if(CollectionUtils.isEmpty(paymentOrderDetailsUseLinesEntities)){ + logger.info("====OA中查询出来得付款单明细用途为空===="); + jsonDetails.put("PayBillUseLines",jsonArrayUseLine); }else{ - return BaseResult.getFailureMessageEntity("付款单推送失败",jsonBody.getString("ResMsg")); + for (PaymentOrderDetailsUseLinesEntity orderDetailsUseLinesEntity : paymentOrderDetailsUseLinesEntities) { + JSONObject jsonPayBillUse=new JSONObject(); + jsonDetails.put("Maturity",orderDetailsUseLinesEntity.getMaturity());//到期日 + String payProperty=null; + if(orderDetailsUseLinesEntity.getPayProperty().equals("-4517840471053613598")){ + payProperty="0";//标准 + }else if(orderDetailsUseLinesEntity.getPayProperty().equals("3562140919963140665")){ + payProperty="1";//保证金 + }else if(orderDetailsUseLinesEntity.getPayProperty().equals("-1289258062492909108")){ + payProperty="3";//预付款 + }else if(orderDetailsUseLinesEntity.getPayProperty().equals("5931400285590995368")){ + payProperty="9";//杂项 + } + jsonPayBillUse.put("PayProperty",payProperty);//用途 + jsonPayBillUse.put("Money",orderDetailsUseLinesEntity.getMoney());//金额 + jsonPayBillUse.put("SettlementFee",orderDetailLinesEntity.getSettlementFee());//手续费 + jsonPayBillUse.put("LineNum",orderDetailsUseLinesEntity.getLineNum());//行号 + jsonPayBillUse.put("SuppCode",orderDetailsUseLinesEntity.getSuppCode());//代付供应商 + jsonPayBillUse.put("SuppName",orderDetailsUseLinesEntity.getSuppName());//代付供应商名称 + jsonPayBillUse.put("SuppSiteCode",orderDetailsUseLinesEntity.getSuppSiteCode());//代付供应商位置 + jsonPayBillUse.put("SuppSiteName",orderDetailsUseLinesEntity.getSuppSiteName());//代付供应商位置名称 + jsonPayBillUse.put("BizOrgCode",orderEntity.getSrcBillOrgCode());//业务组织 + jsonPayBillUse.put("DeptCode",orderDetailsUseLinesEntity.getDeptCode());//部门 + jsonPayBillUse.put("TransactorCode",orderDetailsUseLinesEntity.getTransactorCode());//业务员 + jsonPayBillUse.put("ProjectCode",orderDetailsUseLinesEntity.getProjectCode());//项目 + jsonPayBillUse.put("IncExpItemCode",orderDetailsUseLinesEntity.getIncExpItemCode());//收支项目 + jsonPayBillUse.put("ItemMasterCode",orderDetailsUseLinesEntity.getItemMasterCode());//料品 + jsonPayBillUse.put("CustCode",orderDetailsUseLinesEntity.getCustCode());//代付客户 + jsonPayBillUse.put("CustName",orderDetailsUseLinesEntity.getCustName());//代付客户名称 + jsonPayBillUse.put("CustSiteCode",orderDetailsUseLinesEntity.getCustSiteCode());//代付客户位置 + jsonPayBillUse.put("CustSiteName",orderDetailsUseLinesEntity.getCustSiteName());//代付客户位置名称 + jsonArrayUseLine.add(jsonPayBillUse); + jsonDetails.put("PayBillUseLines",jsonArrayUseLine); + } + } + jsonArray.add(jsonDetails); + jsonMain.put("PayBillLines",jsonArray); + } + String token = acquireTokenService.getToken(); + logger.info("======获取得德广信U9Ctoken为:{}=====",token); + if(StrUtil.isNotEmpty(token)) { + String params = jsonMain.toJSONString(); + JSONObject jsonObject1 = JSONObject.parseObject(params); + JSONArray jsonArray1 = new JSONArray(); + jsonArray1.add(jsonObject1); + String jsonStr = String.valueOf(jsonArray1); + //调用U9C付款单新增接口 + logger.info("====OA付款单传递德广信U9C得请求参数为:{}======",jsonStr); + String body = HttpRequest.post(URLTEST + "/U9C/webapi/PayBill/Create").header("token", token).header("content-type", "application/json").body(jsonStr).execute().body(); + logger.info("====OA付款单传递德广信U9C得返回参数为:{}======",body); + boolean flag=true; + JSONObject jsonBody = JSONObject.parseObject(body); + if(jsonBody.getString("Success").equals("true")){ + JSONArray jsonArrayData = jsonBody.getJSONArray("Data"); + if(CollectionUtils.isNotEmpty(jsonArrayData)) { + JSONObject jsonData = JSON.parseObject(JSON.toJSONString(jsonArrayData.get(0))); + String mCode = jsonData.getString("m_code"); + if (StrUtil.isNotEmpty(mCode)) { + flag=true; + }else{ + flag=false; + } + }else{ + flag=false; + } + }else{ + flag=false; + } + //保存日志 + IntegrationTaskLivingDetailsEntity taskLivingDetail = new IntegrationTaskLivingDetailsEntity(); + taskLivingDetail.setCreate_time(new Date()); + taskLivingDetail.setModify_time(new Date()); + taskLivingDetail.setRootAppPk(orderEntity.getId()); + taskLivingDetail.setRootAppBill(orderEntity.getDocNo()); + taskLivingDetail.setPluginId("PaymentOrderPluginInitializer"); + taskLivingDetail.setId(json.getString("details_id")); + taskLivingDetail.setRootAppNewData(jsonStr); + taskLivingDetail.setNewTransmitInfo(body); + taskLivingDetail.setNewPushDate(new Date()); + saveLog(json.getString("id"), flag, taskLivingDetail); + if(jsonBody.getString("Success").equals("true")){ + JSONArray jsonArrayDate = jsonBody.getJSONArray("Data"); + if(CollectionUtils.isNotEmpty(jsonArrayDate)){ + JSONObject jsonData = JSON.parseObject(JSON.toJSONString(jsonArrayDate.get(0))); + String mCode = jsonData.getString("Code"); + logger.info("=====德广信U9C付款单新增返回得付款订单号为:{}===",mCode); + if(StrUtil.isNotEmpty(mCode)){ + logger.info("========开始更新付款单推送标识为成功========="); + orderEntity.setPushStatus(mCode); + paymentOrderDao.updatePaymentOrderStatus(orderEntity); + logger.info("======付款单推送状态更新成功完毕======="); + return BaseResult.getSuccessMessageEntity("付款单推送成功",mCode); + }else{ + logger.info("=========OA付款单推送失败,开始更新付款单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + paymentOrderDao.updatePaymentOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("付款单推送失败"); + } + }else{ + logger.info("=========OA付款单推送失败,开始更新付款单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + paymentOrderDao.updatePaymentOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("付款单推送失败"); + } + }else{ + logger.info("=========OA付款单推送失败,开始更新付款单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + paymentOrderDao.updatePaymentOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("付款单推送失败"); } }else{ - return BaseResult.getFailureMessageEntity("付款单推送失败",jsonBody.getString("ResMsg")); + logger.info("=========获取德广信U9Ctkoen失败===="); } - }else{ - return BaseResult.getFailureMessageEntity("付款单推送失败",jsonBody.getString("ResMsg")); + } } }catch (Exception e){ - logger.info("========OA付款单推送U9C失败:{}=========",e.getMessage()); + logger.info("===OA付款单推送德广信U9C错误:{}===",e.getMessage()); } return null; } + private void saveLog(String integration_task_living_details_id, Boolean flag, IntegrationTaskLivingDetailsEntity taskLivingDetail) { + try { + //判断,成功调用这个方法 + if (StrUtil.isEmpty(integration_task_living_details_id)) { + if (flag) { + taskLivingDetailsService.saveLogToSuccess(taskLivingDetail); + } else { + //失败 调用这个方法 + taskLivingDetailsService.saveLogToFail(taskLivingDetail); + } + } else { + if (flag) { + //如果是重试 成功调这个方法 + taskLivingDetailsService.saveLogFailToSuccess(taskLivingDetail); + } else { + //如果是重试 失败调这个方法 + taskLivingDetailsService.updateLogFailToSuccess(taskLivingDetail); + } + } + } catch (Exception e) { + logger.error("保存日志出错:{}", e); + } + } + + @Override public Integer updatePaymentOrderStatus(JSONObject json) { return null; diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/impl/SalesOrderServiceImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/impl/SalesOrderServiceImpl.java index ad96e3c2..e7406192 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/impl/SalesOrderServiceImpl.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/dgx/oa/service/impl/SalesOrderServiceImpl.java @@ -7,24 +7,34 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.hzya.frame.basedao.service.impl.BaseService; import com.hzya.frame.plugin.dgx.oa.dao.ISalesOrderDao; +import com.hzya.frame.plugin.dgx.oa.dao.ISalesOrderDetailsDao; +import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderDetailsEntity; import com.hzya.frame.plugin.dgx.oa.entity.SalesOrderEntity; -import com.hzya.frame.plugin.dgx.oa.seeyon.entity.CfsLogEntity; -import com.hzya.frame.plugin.dgx.oa.seeyon.entity.OAWorkflowEventDataEntity; import com.hzya.frame.plugin.dgx.oa.seeyon.service.impl.CfsLogServiceImpl; import com.hzya.frame.plugin.dgx.oa.service.ISalesOrderService; import com.hzya.frame.plugin.dgx.u9c.service.impl.AcquireTokenServiceImpl; import com.hzya.frame.sysnew.application.database.dao.ISysApplicationDatabaseDao; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.entity.IntegrationTaskLivingDetailsEntity; +import com.hzya.frame.sysnew.integtationTaskLivingDetails.service.IIntegrationTaskLivingDetailsService; import com.hzya.frame.web.entity.BaseResult; +import com.hzya.frame.web.entity.JsonResultEntity; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; -@Service(value = "SalesOrderServiceImpl") public class SalesOrderServiceImpl extends BaseService implements ISalesOrderService { private ISalesOrderDao salesOrderDao; + @Autowired + private ISalesOrderDetailsDao salesOrderDetailsDao; + @Autowired + private IIntegrationTaskLivingDetailsService taskLivingDetailsService; + + @Autowired public void setSalesOrderDao(ISalesOrderDao dao) { this.salesOrderDao = dao; @@ -43,80 +53,209 @@ public class SalesOrderServiceImpl extends BaseService @Autowired private CfsLogServiceImpl cfsLogService; - //查询OA销售订单传递U9C + + //定时查询OA中已审核得销售订单传递U9C @Override - public Object querySalesOrderToU9C(JSONObject json) { - JSONObject jsonObject = json.getJSONObject("jsonStr"); - String formApp = jsonObject.getString("formApp"); - String id = jsonObject.getString("id"); - String dataSourceCode = jsonObject.getString("dataSourceCode"); - logger.info("====销售订单得formApp为:{}=====",formApp); - //销售订单得formAppid - if(!checkStr(formApp) && formApp.equals("-4485599744122928342")){ - return BaseResult.getFailureMessageEntity("formApp不能为空"); - } - jsonObject.remove("formApp"); - jsonObject.remove("id"); - jsonObject.remove("grpDataSourceCode"); + public JsonResultEntity querySalesOrderToU9C(JSONObject json) { + String sourceCode = json.getString("sourceCode"); + SalesOrderEntity salesOrderEntity=new SalesOrderEntity(); + salesOrderEntity.setDataSourceCode(sourceCode); try { - String token = acquireTokenService.getToken(); - logger.info("获取得德广信U9Ctoken为:{}",token); - if(StrUtil.isNotEmpty(token)){ - String params = jsonObject.toJSONString(); - JSONObject jsonObject1 = JSONObject.parseObject(params); - JSONArray jsonArray1 = new JSONArray(); - jsonArray1.add(jsonObject1); - String jsonStr = String.valueOf(jsonArray1); - //调用U9C销售订单新增接口 - logger.info("====OA销售订单传递德广信U9C得请求参数为:{}======",jsonStr); - String body = HttpRequest.post(URLTEST + "/U9C/webapi/SO/Create").header("token", token).header("content-type", "application/json").body(jsonStr).execute().body(); - logger.info("====OA销售订单传递德广信U9C得返回参数为:{}======",body); - JSONObject jsonBody = JSONObject.parseObject(body); - if(jsonBody.getString("Success").equals("true")){ - JSONArray jsonArray = jsonBody.getJSONArray("Data"); - if(CollectionUtils.isNotEmpty(jsonArray)) { - JSONObject jsonData = JSON.parseObject(JSON.toJSONString(jsonArray.get(0))); - String mCode = jsonData.getString("m_code"); - logger.info("=====德广信U9C销售订单新增返回得销售订单号为:{}===", mCode); - if (StrUtil.isNotEmpty(mCode)) { - /*SalesOrderEntity salesOrderEntity=new SalesOrderEntity(); - salesOrderEntity.setDocNo(mCode); - salesOrderEntity.setId(id); - salesOrderEntity.setDataSourceCode(dataSourceCode); - salesOrderDao.updateSalesOrderDocNo(salesOrderEntity); - OAWorkflowEventDataEntity oaWorkflowEventDataEntity = new OAWorkflowEventDataEntity(); - oaWorkflowEventDataEntity.setId(id); - oaWorkflowEventDataEntity.setFormApp(formApp); - oaWorkflowEventDataEntity.setBusinessDataStr(salesOrderEntity.getDocNo()); - cfsLogService.importCfsLog(new CfsLogEntity("销售订单", "formmain_0666", oaWorkflowEventDataEntity, body));*/ - return BaseResult.getSuccessMessageEntity("销售订单推送成功", mCode); + List query =null; // + if(StrUtil.isNotEmpty(json.getString("id"))){ + //重试方法 + salesOrderEntity.setId(json.getString("id")); + query= salesOrderDao.querySalesOrderRetry(salesOrderEntity); + }else{ + query= salesOrderDao.query(salesOrderEntity); + } + if(CollectionUtils.isEmpty(query)){ + logger.info("====OA中没有已审核得销售订单传递U9C===="); + return BaseResult.getSuccessMessageEntity("查询成功",null); + } + for (SalesOrderEntity orderEntity : query) { + orderEntity.setDataSourceCode(sourceCode); + JSONObject jsonMain=new JSONObject(); + jsonMain.put("DocumentType",orderEntity.getDocumentType());//单据类型 + jsonMain.put("DocNo",orderEntity.getDocNo());//单号 + jsonMain.put("OrderBy",orderEntity.getOrderBy());//客户 + jsonMain.put("BusinessDate",orderEntity.getBusinessDate());//日期 + jsonMain.put("SaleDepartment",orderEntity.getSaleDepartment());//部门 + jsonMain.put("Seller",orderEntity.getSeller());//业务员 + jsonMain.put("IsPriceIncludeTax",true);//价格是否含税 + jsonMain.put("Memo",orderEntity.getMemo());//备注 + jsonMain.put("ConfirmTermCode",orderEntity.getConfirmTermCode());//立账条件 + JSONObject jsonDescFlexField=new JSONObject(); + jsonDescFlexField.put("PubDescSeg1",orderEntity.getPubDescSeg1());//合同号 + jsonDescFlexField.put("PubDescSeg5",orderEntity.getPubDescSeg5());//厂区 + jsonDescFlexField.put("PubDescSeg6",orderEntity.getPubDescSeg6());//贸易方式 + jsonMain.put("DescFlexField",jsonDescFlexField); + JSONArray jsonArray=new JSONArray(); + SalesOrderDetailsEntity salesOrderDetailsEntity = new SalesOrderDetailsEntity(); + salesOrderDetailsEntity.setFormmainId(orderEntity.getId()); + salesOrderDetailsEntity.setDataSourceCode(sourceCode); + List salesOrderDetailsEntities = salesOrderDetailsDao.query(salesOrderDetailsEntity); + if (CollectionUtils.isEmpty(salesOrderDetailsEntities)) { + logger.info("====OA中查询出来得销售订单明细为空===="); + jsonMain.put("SOLineDTOList",jsonArray); + }else{ + for (SalesOrderDetailsEntity orderDetailsEntity : salesOrderDetailsEntities) { + JSONObject jsonDetails=new JSONObject(); + jsonDetails.put("DocLineNo",orderDetailsEntity.getDocLineNo());//行号 + jsonDetails.put("ItemCode",orderDetailsEntity.getItemCode());//料号 + String freeType=null; + if(orderDetailsEntity.getFreeType().equals("-7818294496872217619")){ + freeType="0"; + }else if(orderDetailsEntity.getFreeType().equals("6443958972472642867")){ + freeType="1"; + }else{ + freeType="-1"; + } + jsonDetails.put("FreeType",freeType);//免费品类型 + jsonDetails.put("Project",orderEntity.getProject());//项目 + jsonDetails.put("OrderByQtyTU",orderDetailsEntity.getOrderByQtyTU());//数量 + jsonDetails.put("TU",orderDetailsEntity.gettU());//销售单位编码 + jsonDetails.put("FinallyPriceTC",orderDetailsEntity.getFinallyPriceTC());//最终价 + jsonDetails.put("TaxSchedule",orderDetailsEntity.getTaxSchedule()==null?"YZ08":orderDetailsEntity.getTaxSchedule());//税组合 + jsonDetails.put("ShipTogetherFlag","-1");//成套发货标志 + jsonDetails.put("Memo",orderDetailsEntity.getMemo());//备注 + jsonDetails.put("RecTermCode",orderDetailsEntity.getRecTermCode());//收款条件 + JSONObject jsonDesc=new JSONObject(); + boolean falg=true; + if(orderDetailsEntity.getPrivateDescSeg1().equals("5634606992081569853")){ + falg=true; + }else{ + falg=false; + } + jsonDesc.put("PrivateDescSeg1",falg);//是否处理 + jsonDesc.put("PrivateDescSeg2",orderDetailsEntity.getPrivateDescSeg2());//项目明细 + jsonDesc.put("PubDescSeg5",orderDetailsEntity.getPrivateDescSeg5());//厂区明细id + jsonDesc.put("PubDescSeg1",orderDetailsEntity.getPubDescSeg1());//合同号明细 + jsonDetails.put("DescFlexField",jsonDesc); + JSONArray jsonArrayLineDTO=new JSONArray(); + JSONObject jsonObjectShiplineDTO=new JSONObject(); + jsonObjectShiplineDTO.put("DocSubLineNo",orderDetailsEntity.getDocLineNo());//行号 + jsonObjectShiplineDTO.put("ItemCode",orderDetailsEntity.getItemCode());//料号 + jsonObjectShiplineDTO.put("RequireDate",orderDetailsEntity.getRequireDate());//交期 + jsonObjectShiplineDTO.put("DemandType",orderDetailsEntity.getDemandType());//需求分类 + jsonObjectShiplineDTO.put("Memo",orderDetailsEntity.getMemo());//备注 + jsonArrayLineDTO.add(jsonObjectShiplineDTO); + jsonDetails.put("SOShiplineDTOList",jsonArrayLineDTO); + jsonArray.add(jsonDetails); + jsonMain.put("SOLineDTOList",jsonArray); + } + } + String token = acquireTokenService.getToken(); + logger.info("======获取得德广信U9Ctoken为:{}=====",token); + if(StrUtil.isNotEmpty(token)) { + String params = jsonMain.toJSONString(); + JSONObject jsonObject1 = JSONObject.parseObject(params); + JSONArray jsonArray1 = new JSONArray(); + jsonArray1.add(jsonObject1); + String jsonStr = String.valueOf(jsonArray1); + //调用U9C销售订单新增接口 + logger.info("====OA销售订单传递德广信U9C得请求参数为:{}======", jsonStr); + String body = HttpRequest.post(URLTEST + "/U9C/webapi/SO/Create").header("token", token).header("content-type", "application/json").body(jsonStr).execute().body(); + logger.info("====OA销售订单传递德广信U9C得返回参数为:{}======", body); + boolean flag=true; + JSONObject jsonBody = JSONObject.parseObject(body); + if(jsonBody.getString("Success").equals("true")){ + JSONArray jsonArrayData = jsonBody.getJSONArray("Data"); + if(CollectionUtils.isNotEmpty(jsonArrayData)) { + JSONObject jsonData = JSON.parseObject(JSON.toJSONString(jsonArrayData.get(0))); + String mCode = jsonData.getString("m_code"); + if (StrUtil.isNotEmpty(mCode)) { + flag=true; + }else{ + flag=false; + } }else{ - return BaseResult.getFailureMessageEntity("销售订单推送失败",jsonBody.getString("ResMsg")); + flag=false; } }else{ - return BaseResult.getFailureMessageEntity("销售订单推送失败",jsonBody.getString("ResMsg")); + flag=false; } - } - else{ - return BaseResult.getFailureMessageEntity("销售订单推送失败",jsonBody.getString("ResMsg")); + //保存日志 + IntegrationTaskLivingDetailsEntity taskLivingDetail = new IntegrationTaskLivingDetailsEntity(); + taskLivingDetail.setCreate_time(new Date()); + taskLivingDetail.setModify_time(new Date()); + taskLivingDetail.setRootAppPk(orderEntity.getId()); + taskLivingDetail.setRootAppBill(orderEntity.getDocNo()); + taskLivingDetail.setId(json.getString("details_id")); + taskLivingDetail.setPluginId("SalesOrderPluginInitializer"); + taskLivingDetail.setRootAppNewData(jsonStr); + taskLivingDetail.setNewTransmitInfo(body); + taskLivingDetail.setNewPushDate(new Date()); + saveLog(json.getString("id"), flag, taskLivingDetail); + + if(jsonBody.getString("Success").equals("true")){ + JSONArray jsonArrayData = jsonBody.getJSONArray("Data"); + if(CollectionUtils.isNotEmpty(jsonArrayData)) { + JSONObject jsonData = JSON.parseObject(JSON.toJSONString(jsonArrayData.get(0))); + String mCode = jsonData.getString("m_code"); + logger.info("=====德广信U9C销售订单新增返回得销售订单号为:{}===", mCode); + if (StrUtil.isNotEmpty(mCode)) { + orderEntity.setPushStatus(mCode); + logger.info("========开始更新销售订单推送标识为成功========="); + //更新销售订单推送状态 + salesOrderDao.updateSalesOrderStatus(orderEntity); + logger.info("======销售订单推送状态更新成功完毕======="); + return BaseResult.getSuccessMessageEntity("销售订单推送成功",mCode); + }else{ + logger.info("=========OA销售订单推送失败,开始更新销售订单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + salesOrderDao.updateSalesOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("销售订单推送失败"); + } + }else{ + logger.info("=========OA销售订单推送失败,开始更新销售订单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + salesOrderDao.updateSalesOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("销售订单推送失败"); + } + } + else{ + logger.info("=========OA销售订单推送失败,开始更新销售订单推送标识为失败:{}=====",jsonBody.getString("ResMsg")); + orderEntity.setPushStatus("2"); + salesOrderDao.updateSalesOrderStatus(orderEntity); + return BaseResult.getFailureMessageEntity("销售订单推送失败"); + } + }else{ + logger.info("=========获取德广信U9Ctkoen失败===="); } } }catch (Exception e){ - logger.info("========OA销售订单推送U9C失败:{}=========",e.getMessage()); + logger.info("======查询OA已审核得销售订单失败:{}====",e.getMessage()); + return BaseResult.getFailureMessageEntity("查询OA已审核得销售订单失败"); } return null; } - //将已审核得销售订单传递U9C - @Override - public Object querySalesOrderToU9CByAudit(JSONObject json) { - return null; + + private void saveLog(String integration_task_living_details_id, Boolean flag, IntegrationTaskLivingDetailsEntity taskLivingDetail) { + try { + //判断,成功调用这个方法 + if (StrUtil.isEmpty(integration_task_living_details_id)) { + if (flag) { + taskLivingDetailsService.saveLogToSuccess(taskLivingDetail); + } else { + //失败 调用这个方法 + taskLivingDetailsService.saveLogToFail(taskLivingDetail); + } + } else { + if (flag) { + //如果是重试 成功调这个方法 + taskLivingDetailsService.saveLogFailToSuccess(taskLivingDetail); + } else { + //如果是重试 失败调这个方法 + taskLivingDetailsService.updateLogFailToSuccess(taskLivingDetail); + } + } + } catch (Exception e) { + logger.error("保存日志出错:{}", e); + } } - //更新推送状态 - @Override - public Integer updateSalesOrderStatus(JSONObject json) { - return null; - } + }