添加获取报账单号状态

release
路明慧 2 years ago
parent b2dbfd87ba
commit d9441949e2
  1. 3
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/config/BaseServiceConfig.java
  2. 32
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/model/po/EsOutput.java
  3. 59
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/model/po/IsInput.java
  4. 20
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/model/po/PoCommonRequestParam.java
  5. 16
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/model/po/PoCommonResponseParam.java
  6. 34
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OrderInvoiceInfoServiceImpl.java

@ -300,6 +300,9 @@ public class BaseServiceConfig{
@Value("${order.push.po.userName:}")
private String poUserName;
@Value("${order.push.po.bzdStatus:}")
private String bzdStatus;
/**
* 调用山能PO password
*/

@ -0,0 +1,32 @@
package com.dxhy.order.invoice.module.invoice.model.po;
import lombok.Data;
/**
* @Description: PO输出参数
* @Author liufeilong
* @Date 2023-02-06
**/
@Data
public class EsOutput {
/**
* 外围系统数据唯一标识
*/
private String BSKEY;
/**
* SAP数据唯一标识
*/
private String SAPKEY;
/**
* 数据处理标识(S成功E失败)
*/
private String ZTYPE;
/**
* 数据处理描述
*/
private String ZMESSAGE;
/**
* 业务报文
*/
private String ZDATA;
}

@ -0,0 +1,59 @@
package com.dxhy.order.invoice.module.invoice.model.po;
import lombok.Data;
import java.io.Serializable;
/**
* @Description: PO输入参数
* @Author liufeilong
* @Date 2023-02-06
**/
@Data
public class IsInput implements Serializable {
/**
* 外围系统
*/
private String SYSID;
/**
* 接口业务ID
*/
private String IFYWID;
/**
* 外围系统数据唯一标识
*/
private String BSKEY;
/**
* SAP数据唯一标识
*/
private String SAPKEY;
/**
* 组织机构代码
*/
private String ZORG;
/**
* SAP模块编码OA用
*/
private String ZFILED1;
/**
* 预留字段
*/
private String ZFILED2;
/**
* 预留字段
*/
private String ZFILED3;
/**
* 预留字段
*/
private String ZFILED4;
/**
* SAP Client
*/
private String ZFILED5;
/**
* 业务参数
*/
private String ZDATA;
}

@ -0,0 +1,20 @@
package com.dxhy.order.invoice.module.invoice.model.po;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.io.Serializable;
/**
* @Description: PO接口公共请求参数
* @Author liufeilong
* @Date 2023-02-06
**/
@Data
public class PoCommonRequestParam implements Serializable {
/**
* IsInput
*/
@JSONField(name = "IS_INPUT")
private IsInput IS_INPUT;
}

@ -0,0 +1,16 @@
package com.dxhy.order.invoice.module.invoice.model.po;
import lombok.Data;
/**
* @Description: PO接口公共响应参数
* @Author liufeilong
* @Date 2023-02-06
**/
@Data
public class PoCommonResponseParam {
/**
* ES_OUTPUT
*/
private EsOutput ES_OUTPUT;
}

@ -27,6 +27,9 @@ import com.dxhy.order.invoice.module.invoice.dao.*;
import com.dxhy.order.invoice.module.invoice.model.FileDownLoad;
import com.dxhy.order.invoice.module.invoice.model.bo.QueryCountInvoiceBO;
import com.dxhy.order.invoice.module.invoice.model.excel.*;
import com.dxhy.order.invoice.module.invoice.model.po.IsInput;
import com.dxhy.order.invoice.module.invoice.model.po.PoCommonRequestParam;
import com.dxhy.order.invoice.module.invoice.model.po.PoCommonResponseParam;
import com.dxhy.order.invoice.module.invoice.model.vo.*;
import com.dxhy.order.invoice.module.invoice.service.EmailService;
import com.dxhy.order.invoice.module.invoice.service.HistoryDataPdfService;
@ -61,6 +64,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.apache.xmlbeans.impl.jam.xml.TunnelledException;
import org.joda.time.DateTime;
import org.joda.time.Duration;
import org.springframework.beans.BeanUtils;
@ -1732,5 +1736,35 @@ public class OrderInvoiceInfoServiceImpl implements OrderInvoiceInfoService {
return R.ok();
}
public boolean getBzhStatus(String bzdh,String clint){
//拼凑报文
IsInput isInput = new IsInput();
isInput.setSYSID(OrderInfoEnum.SYS_SIGN_FP.getKey());
isInput.setIFYWID(OrderInfoEnum.INTERFACE_BUSINESS_ID_GSCLIENT.getKey());
isInput.setBSKEY(UUID.randomUUID().toString().replace("-", ""));
isInput.setZORG("");
isInput.setZFILED5(clint);
Map<String,String> data = new HashMap<>();
data.put("ZBZDH",bzdh);
isInput.setZDATA(JsonUtils.getInstance().toJsonString(data));
PoCommonRequestParam poCommonRequestParam = new PoCommonRequestParam();
poCommonRequestParam.setIS_INPUT(isInput);
String param = JsonUtils.getInstance().toJsonString(poCommonRequestParam);
log.info("{}获取报账单号状态入参:{}",LOGGER_MSG,param);
String result = HttpUtils.sendPo(baseServiceConfig.getPoUrl(), param,baseServiceConfig.getPoUserName(),baseServiceConfig.getPoPassword());
log.info("{}获取报账单号状态出参:{}",LOGGER_MSG,result);
PoCommonResponseParam poCommonResponseParam = JSONObject.parseObject(result, PoCommonResponseParam.class);
String zdata = poCommonResponseParam.getES_OUTPUT().getZDATA();
JSONObject response = JSONObject.parseObject(zdata);
String bzdzt = response.getString("BZDZT");
//校验状态
String bzdStatus = baseServiceConfig.getBzdStatus();
if (StringUtils.isBlank(bzdh)||bzdStatus.contains(bzdzt)){
return false;
}
return true;
}
}

Loading…
Cancel
Save