feat:完成税收分类编码接口,待测试

gongquanlin 2 years ago committed by WangQi
parent bbba36859b
commit a5341020be
  1. 34
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/dao/GroupTaxClassCodeMapper.java
  2. 21
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/dao/TaxClassCodeMapper.java
  3. 15
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/service/TaxClassCodeService.java
  4. 30
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/service/impl/TaxClassCodeServiceImpl.java
  5. 16
      order-management-base-service/src/main/resources/mybatis/mapper/GroupTaxClassCodeMapper.xml
  6. 21
      order-management-base-service/src/main/resources/mybatis/mapper/TaxClassCodeMapper.xml
  7. 5
      order-management-common/src/main/java/com/dxhy/order/constant/ConfigurerInfo.java
  8. 9
      order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoContentEnum.java
  9. 47
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/api/InvoiceRestApiV6.java
  10. 28
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/grouptax/GroupTaxReqBO.java
  11. 31
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v4/grouptax/GroupTaxRespBO.java
  12. 15
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/DATABO.java
  13. 31
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/DATAINFOSBO.java
  14. 15
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/ESBBO.java
  15. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/MdmGmfxxtbMulticodeBO.java
  16. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/MdmGmfxxtbMulticodeValuelistBO.java
  17. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/MdmGmfxxtbReqBO.java
  18. 59
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/MdmSyncGroupTaxCodeReqBO.java
  19. 11
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/MdmSyncGroupTaxCodeResBO.java
  20. 16
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/protocol/v6/sdenergy/SDEnergyMdmBaseBO.java
  21. 128
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/InterfaceServiceV3.java
  22. 1249
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java

@ -13,7 +13,7 @@ import java.util.Map;
* @Date:2019/9/17
*/
public interface GroupTaxClassCodeMapper {
/**
* 插入
*
@ -21,7 +21,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
int insert(GroupTaxClassCodeEntity record);
/**
* 根据id查询
*
@ -29,7 +29,15 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
GroupTaxClassCodeEntity selectGroupTaxClassCode(String id);
/**
* 根据税号和商品名称查询商品
*
* @param id
* @return
*/
GroupTaxClassCodeEntity selectGroupTaxClassCodeByNsrsbhAndCode(@Param("xhf_nsrsbh") String nsrsbh,@Param("encoding") String encoding);
/**
* 更新
*
@ -37,7 +45,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
int updateByPrimaryKeySelective(GroupTaxClassCodeEntity record);
/**
* 更新
*
@ -45,7 +53,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
int updateByPrimaryKey(GroupTaxClassCodeEntity record);
/**
* 集团税编库列表
*
@ -53,7 +61,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
List<Map<String, Object>> queryGroupTaxClassCode(Map<String, Object> map);
/**
* 集团税编批量共享数据
*
@ -61,7 +69,7 @@ public interface GroupTaxClassCodeMapper {
* @param shareStatus
*/
void updateTaxClassCodeShareStatus(@Param(value = "taxClassCodeIdArray") String[] taxClassCodeIdArray, @Param(value = "shareStatus") String shareStatus);
/**
* 集团税编批量设置数据为启用
*
@ -69,7 +77,7 @@ public interface GroupTaxClassCodeMapper {
* @param dataStatus
*/
void updateTaxClassCodeDataStatus(@Param(value = "taxClassCodeIdArray") String[] taxClassCodeIdArray, @Param(value = "dataStatus") String dataStatus);
/**
* 查询
*
@ -77,7 +85,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
Map<String, String> selectGroupTaxClassCodeById(@Param(value = "groupTaxClassCodeId") String groupTaxClassCodeId);
/**
* 查询
*
@ -85,7 +93,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
List<GroupTaxClassCodeEntity> queryTaxClassCodeBySpbmAndSpmc(Map<String, String> paramMap);
/**
* 查询
*
@ -93,7 +101,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
List<GroupTaxClassCodeEntity> queryTaxClassCodeBySpbmOrSpmc(Map<String, String> paramMap);
/**
* 集团商品名称校验
*
@ -101,7 +109,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
int selectByName(Map<String, String> map);
/**
* 集团商品code校验
*
@ -109,7 +117,7 @@ public interface GroupTaxClassCodeMapper {
* @return
*/
int selectByCode(Map<String, String> map);
/**
* 更新
*

@ -1,6 +1,7 @@
package com.dxhy.order.baseservice.module.taxclass.dao;
import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@ -19,9 +20,12 @@ public interface TaxClassCodeMapper {
* @return
*/
List<TaxClassCodeEntity> selectTaxClassCode(Map<String, Object> map);
List<TaxClassCodeEntity> selectTaxClassCodeBySpmcOrSm(String queryString);
// warning 以下sql添加redis缓存 修改请注意
/**
* 判断税收分类编码是否存在
*
@ -29,8 +33,17 @@ public interface TaxClassCodeMapper {
* @return
*/
TaxClassCodeEntity queryTaxClassCodeEntityBySpbm(String spbm);
/**
* 根据商品名称和描述查找商品分类编码
*
* @param spmc
* @return
*/
TaxClassCodeEntity queryTaxClassCodeEntityBySpmcOrMs(String spmc);
/**
* 查询所有税编表数据
*

@ -19,7 +19,7 @@ public interface TaxClassCodeService {
* @return
*/
PageUtils queryTaxClassCode(Map<String, Object> map);
/**
* 根据商品编码取缓存数据
*
@ -27,14 +27,23 @@ public interface TaxClassCodeService {
* @return
*/
TaxClassCodeEntity queryTaxClassCodeFromCache(String spbm);
/**
* 根据商品名称和描述查找商品分类编码
*
* @param spmc
* @param ms
* @return
*/
TaxClassCodeEntity queryTaxClassCodeFromCacheBySpmcOrMs(String spmc);
/**
* 缓存商品编码数据
*
* @return
*/
boolean cacheTaxClassCode();
/**
* 清除缓存
*

@ -28,15 +28,15 @@ import java.util.Map;
@Slf4j
@Service
public class TaxClassCodeServiceImpl implements TaxClassCodeService {
private static final Map<String, TaxClassCodeEntity> CACHE_MAP = new HashMap<>();
@Resource
private TaxClassCodeMapper taxClassCodeMapper;
@Override
public PageUtils queryTaxClassCode(Map<String, Object> paramMap) {
int pageSize = Integer.parseInt(String.valueOf(paramMap.get(ConfigureConstant.STRING_PAGE_SIZE)));
int currPage = Integer.parseInt(String.valueOf(paramMap.get(ConfigureConstant.STRING_CURR_PAGE)));
PageHelper.startPage(currPage, pageSize);
@ -51,9 +51,9 @@ public class TaxClassCodeServiceImpl implements TaxClassCodeService {
}
PageInfo<TaxClassCodeEntity> pageInfo = new PageInfo<>(taxClassList);
return new PageUtils(pageInfo.getList(), (int) pageInfo.getTotal(), pageInfo.getPageSize(), pageInfo.getPageNum());
}
@Override
public TaxClassCodeEntity queryTaxClassCodeFromCache(String spbm) {
if (StringUtils.isBlank(spbm)) {
@ -69,10 +69,22 @@ public class TaxClassCodeServiceImpl implements TaxClassCodeService {
taxClassCodeEntity = taxClassCodeMapper.queryTaxClassCodeEntityBySpbm(spbm);
CACHE_MAP.put(spbm, taxClassCodeEntity);
}
return taxClassCodeEntity;
}
@Override
public TaxClassCodeEntity queryTaxClassCodeFromCacheBySpmcOrMs(String spmc) {
if (StringUtils.isBlank(spmc)) {
return null;
}
if (StringUtils.isBlank(spmc)) {
return null;
}
return taxClassCodeMapper.queryTaxClassCodeEntityBySpmcOrMs(spmc);
}
@Override
public boolean cacheTaxClassCode() {
long t1 = System.currentTimeMillis();
@ -85,7 +97,7 @@ public class TaxClassCodeServiceImpl implements TaxClassCodeService {
}
return true;
}
@Override
public boolean cleanCacheTaxClassCode() {
CACHE_MAP.clear();

@ -27,7 +27,7 @@
</resultMap>
<sql id="Base_Column_List">
id
, sort_id, xhf_nsrsbh, merchandise_name, encoding, tax_items, brief_code, specification_model,
, sort_id, xhf_nsrsbh, merchandise_name, encoding, tax_items, brief_code, specification_model,
metering_unit, unit_price, tax_class_code, tax_classification_name, create_time,
dept_id, data_source, matching_state, data_state, share_state, group_id,tax_class_abbreviation,difference_flag,description
</sql>
@ -37,6 +37,18 @@
from group_tax_class_code
where id = #{id,jdbcType=VARCHAR}
</select>
<select id="selectGroupTaxClassCodeByNsrsbhAndCode" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
from group_tax_class_code
<where>
<if test="xhf_nsrsbh != null and xhf_nsrsbh != ''"> and xhf_nsrsbh = #{xhf_nsrsbh,jdbcType=VARCHAR} </if>
<if test="encoding != null and encoding != ''"> and encoding = #{encoding,jdbcType=VARCHAR} </if>
</where>
limit 1
</select>
<!-- <delete id="deleteByPrimaryKey" parameterType="java.lang.String">-->
<!-- delete from group_tax_class_code-->
<!-- where id = #{id,jdbcType=VARCHAR}-->
@ -392,7 +404,7 @@
SELECT gc.group_name,
gctc.*
FROM group_tax_class_code gctc
LEFT JOIN group_commodity gc ON gctc.group_id = gc.id
LEFT JOIN group_commodity gc ON gctc.group_id = gc.id
where gctc.id = #{groupTaxClassCodeId,jdbcType=VARCHAR}
</select>
<!--条件查询税编信息 data_state为2是已经删除的-->

@ -101,6 +101,13 @@
</where>
</select>
<select id="selectTaxClassCodeBySpmcOrSm"
resultType="com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity">
SELECT * FROM tax_class_code
where spmc like concat('%',#{queryString},'%') or sm like concat('%',#{queryString},'%')
</select>
<select id="queryTaxClassCodeEntityBySpbm" parameterType="String"
resultType="com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity">
<bind name="dataType" value="${dataType}"/>
@ -112,6 +119,20 @@
and tcc.kyzt = 'Y'
AND TCC.hzx = 'N'
</select>
<select id="queryTaxClassCodeEntityBySpmcOrMs" parameterType="String"
resultType="com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity">
<bind name="dataType" value="${dataType}"/>
SELECT
tcc.*
FROM tax_class_code tcc
WHERE
tcc.spmc like concat('%',#{spmc,jdbcType=VARCHAR},'%')
or tcc.spmc like concat('%',#{sm,jdbcType=VARCHAR},'%')
and tcc.kyzt = 'Y'
AND tcc.hzx = 'N'
</select>
<select id="queryAllTaxClassCode" resultMap="BaseResultMap">
SELECT id,
spbm,

@ -237,6 +237,11 @@ public class ConfigurerInfo {
* 山能MDM客商购买方信息同步接口
*/
public static final String SDENERGY_MDM_KS_SYNCBUYERINFO = "SdEnergyMdmKsSyncBuyerInfo";
/**
* 山能MDM物料信息同步接口
*/
public static final String SDENERGY_MDM_KS_SYNC_GROUP_TAX_CODE = "SdEnergyMdmKsSyncGroupTaxCode";
/**
* 税控设备信息同步接口

@ -2742,6 +2742,15 @@ public enum OrderInfoContentEnum {
QUERYINVALIDINVOICE_ZFZT_009999("009999", "发票作废失败"),
QUERYINVALIDINVOICE_ZFZT_001000("001000", "发票作废中"),
QUERYINVALIDINVOICE_ZFZT_002000("002000", "发票未作废"),
/**
* 同步税收分类编码(InterfaceServiceImplV3 syncGroupTax)
*/
SYNC_GROUP_TAX_000000("000000", "请求成功"),
SYNC_GROUP_TAX_009999("009999", "纳税人识别号和商品名称不能为空"),
SYNC_GROUP_TAX_009998("009998", "请求税号与企业维护secretId不一致"),
SYNC_GROUP_TAX_009997("009997", "无法匹配到税收分类编码,请手动维护"),
SYNC_GROUP_TAX_009996("009996", "系统未知异常"),
;
/**

@ -1,13 +1,16 @@
package com.dxhy.order.consumer.openapi.api;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.baseservice.module.buyer.protocol.GmfxxcxReqBO;
import com.dxhy.order.baseservice.module.buyer.protocol.GmfxxcxRspBO;
import com.dxhy.order.baseservice.module.buyer.protocol.GmfxxtbReqBO;
import com.dxhy.order.baseservice.module.buyer.protocol.GmfxxtbRspBO;
import com.dxhy.order.baseservice.module.buyer.protocol.sdenergy.MdmGmfxxtbMulticodeValuelistBO;
import com.dxhy.order.baseservice.module.buyer.protocol.sdenergy.MdmGmfxxtbReqBO;
import com.dxhy.order.constant.OrderInfoContentEnum;
import com.dxhy.order.consumer.openapi.protocol.v4.grouptax.GroupTaxReqBO;
import com.dxhy.order.consumer.openapi.protocol.v4.grouptax.GroupTaxRespBO;
import com.dxhy.order.consumer.openapi.protocol.v6.sdenergy.*;
import com.dxhy.order.baseservice.module.commodity.model.protocol.SpxxcxReqBO;
import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.ConfigurerInfo;
@ -50,6 +53,8 @@ import javax.servlet.http.HttpServletResponse;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import static org.joda.time.DateTime.now;
@ -316,6 +321,44 @@ public class InvoiceRestApiV6 {
List<GmfxxtbRspBO> gmfxxtbRspList = interfaceServiceV3.syncBuyerMessage(gmfxxtbReqList, secretId);
returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(gmfxxtbRspList);
} else if (ConfigurerInfo.SDENERGY_MDM_KS_SYNC_GROUP_TAX_CODE.equals(interfaceName)) {
// 同步物料信息
SDEnergyMdmBaseBO baseBO = JSONObject.parseObject(reqStr, SDEnergyMdmBaseBO.class);
List<MdmSyncGroupTaxCodeReqBO> list = new ArrayList<>();
GroupTaxRespBO respBO = GroupTaxRespBO.build(OrderInfoContentEnum.SYNC_GROUP_TAX_009996);
try {
// 逐级判断是否为空,直到取到DATAINFO
list = (List<MdmSyncGroupTaxCodeReqBO>) Optional.of(baseBO)
.map(SDEnergyMdmBaseBO::getESB)
.map(ESBBO::getDATA)
.map(DATABO::getDATAINFOS)
.map(DATAINFOSBO::getDATAINFO)
.map(i -> {
// 转成List<MdmSyncGroupTaxCodeReqBO>
return i.stream().map(j -> {
return JSONObject.parseObject(JSONObject.toJSONString(j), MdmSyncGroupTaxCodeReqBO.class);
}).collect(Collectors.toList());
})
.orElse(new ArrayList<MdmSyncGroupTaxCodeReqBO>());
// 进行同步
List<GroupTaxReqBO> reqBOList = list.stream().map(i -> {
GroupTaxReqBO temp = new GroupTaxReqBO();
temp.setSpmc(i.getDESC1());
temp.setMs(i.getDESCSHORT());
temp.setUnit(i.getDESC5());
temp.setEncoding(i.getCODE());
return temp;
}).collect(Collectors.toList());
respBO = interfaceServiceV3.syncGroupTax(reqBOList, secretId);
} catch (Exception e) {
log.error("{}解析列表失败,原始string:{},错误原因{},错误堆栈:{}", LOGGER_MSG, reqStr, e.getMessage(), e.getStackTrace());
}
returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(respBO);
} else {
returnJsonString = "";
}

@ -0,0 +1,28 @@
package com.dxhy.order.consumer.openapi.protocol.v4.grouptax;
import com.dxhy.order.baseservice.module.taxclass.model.GroupTaxClassCodeEntity;
import lombok.Data;
/**
* @Description
* @Author 巩权林
* @Date 2023/2/10 08:30
**/
@Data
public class GroupTaxReqBO {
// 纳税人识别号
private String nsrsbh;
// 山能MDM物料接口的物料名称的值
private String spmc;
// 山能MDM中描述
private String ms;
// 山能MDM中的单位
private String unit;
// 山能MDM中 CODE主编码的值
private String encoding;
}

@ -0,0 +1,31 @@
package com.dxhy.order.consumer.openapi.protocol.v4.grouptax;
import com.dxhy.order.constant.OrderInfoContentEnum;
import com.dxhy.order.consumer.openapi.protocol.v4.ResponseV4BO;
import lombok.Data;
import java.io.Serializable;
/**
* @Description
* @Author 巩权林
* @Date 2023/2/10 08:30
**/
@Data
public class GroupTaxRespBO extends ResponseV4BO implements Serializable {
public static GroupTaxRespBO build(OrderInfoContentEnum orderInfoContentEnum) {
GroupTaxRespBO resp = new GroupTaxRespBO();
resp.setZTDM(orderInfoContentEnum.getKey());
resp.setZTXX(orderInfoContentEnum.getMessage());
return resp;
}
public boolean isSuccess() {
return OrderInfoContentEnum.SUCCESS.getKey().equals(this.getZTDM());
}
public boolean isFailed() {
return !isSuccess();
}
}

@ -0,0 +1,15 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
public class DATABO {
private DATAINFOSBO DATAINFOS;
public void setDATAINFOS(DATAINFOSBO DATAINFOS) {
this.DATAINFOS = DATAINFOS;
}
public DATAINFOSBO getDATAINFOS() {
return DATAINFOS;
}
}

@ -0,0 +1,31 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
import com.alibaba.fastjson.annotation.JSONField;
import java.util.List;
public class DATAINFOSBO {
@JSONField(name = "DATAINFO")
private List DATAINFO;
private String PUUID;
public void setDATAINFO(List DATAINFO) {
this.DATAINFO = DATAINFO;
}
public List getDATAINFO() {
return DATAINFO;
}
public void setPUUID(String PUUID) {
this.PUUID = PUUID;
}
public String getPUUID() {
return PUUID;
}
}

@ -0,0 +1,15 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
public class ESBBO {
private DATABO DATA;
public void setDATA(DATABO DATA) {
this.DATA = DATA;
}
public DATABO getDATA() {
return DATA;
}
}

@ -1,4 +1,4 @@
package com.dxhy.order.baseservice.module.buyer.protocol.sdenergy;
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.ToString;

@ -1,4 +1,4 @@
package com.dxhy.order.baseservice.module.buyer.protocol.sdenergy;
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.ToString;

@ -0,0 +1,59 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
import lombok.ToString;
/**
* @Description
* @Author 巩权林
* @Date 2023/2/9 16:59
**/
@ToString
public class MdmSyncGroupTaxCodeReqBO {
private String CODE;
private String DESC1;
private String DESC5;
private String DESCSHORT;
private String UUID;
public void setCODE(String CODE) {
this.CODE = CODE;
}
public String getCODE() {
return CODE;
}
public void setDESC1(String DESC1) {
this.DESC1 = DESC1;
}
public String getDESC1() {
return DESC1;
}
public void setDESC5(String DESC5) {
this.DESC5 = DESC5;
}
public String getDESC5() {
return DESC5;
}
public void setDESCSHORT(String DESCSHORT) {
this.DESCSHORT = DESCSHORT;
}
public String getDESCSHORT() {
return DESCSHORT;
}
public void setUUID(String UUID) {
this.UUID = UUID;
}
public String getUUID() {
return UUID;
}
}

@ -0,0 +1,11 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
import com.dxhy.order.baseservice.module.taxclass.model.GroupTaxClassCodeEntity;
/**
* @Description
* @Author 巩权林
* @Date 2023/2/9 17:25
**/
public class MdmSyncGroupTaxCodeResBO extends GroupTaxClassCodeEntity {
}

@ -0,0 +1,16 @@
package com.dxhy.order.consumer.openapi.protocol.v6.sdenergy;
public class SDEnergyMdmBaseBO {
private ESBBO ESBBO;
public void setESB(ESBBO ESBBO) {
this.ESBBO = ESBBO;
}
public ESBBO getESB() {
return ESBBO;
}
}

@ -22,6 +22,8 @@ import com.dxhy.order.consumer.openapi.protocol.v4.fpslzb.SlzbxxCxReqBO;
import com.dxhy.order.consumer.openapi.protocol.v4.fpslzb.SlzbxxCxRspBO;
import com.dxhy.order.consumer.openapi.protocol.v4.fpyl.FpylcxReqBO;
import com.dxhy.order.consumer.openapi.protocol.v4.fpyl.FpylcxRspBO;
import com.dxhy.order.consumer.openapi.protocol.v4.grouptax.GroupTaxReqBO;
import com.dxhy.order.consumer.openapi.protocol.v4.grouptax.GroupTaxRespBO;
import com.dxhy.order.consumer.openapi.protocol.v4.invalid.ZfcxReqBO;
import com.dxhy.order.consumer.openapi.protocol.v4.invalid.ZfcxRspBO;
import com.dxhy.order.consumer.openapi.protocol.v4.invoice.*;
@ -51,7 +53,7 @@ import java.util.List;
* @date: 2018年8月13日 下午4:48:28
*/
public interface InterfaceServiceV3 {
/**
* 发票结果获取
*
@ -60,7 +62,7 @@ public interface InterfaceServiceV3 {
* @return
*/
DdkjxxRspBO getAllocatedInvoicesV3(DdkjxxReqBO ddkjxxReq, String secretId);
/**
* 根据订单号获取订单数据以及发票数据接口
*
@ -69,7 +71,7 @@ public interface InterfaceServiceV3 {
* @return
*/
DdfpcxRspBO getOrderInfoAndInvoiceInfoV3(DdfpcxReqBO ddfpcxReq, String secretId);
/**
* 查询发票数据接口
*
@ -78,18 +80,18 @@ public interface InterfaceServiceV3 {
* @return
*/
DdfpcxRspBO getInvoiceInfoV4(FpcxReqBO fpcxReqBO, String secretId);
/**
* 专票冲红申请单
*
* @param hzsqdscReq 请求报文
* @param kpjh 开票机号
* @param secretId 标识用户身份的SecretId
* @param hzsqdscReq 请求报文
* @param kpjh 开票机号
* @param secretId 标识用户身份的SecretId
* @param interfaceVersion 接口版本号
* @return com.dxhy.order.consumer.openapi.protocol.v4.invoice.HzsqdscRspBO
*/
HzsqdscRspBO specialInvoiceRushRedV3(HzsqdscReqBO hzsqdscReq, String kpjh, String secretId, String interfaceVersion);
/**
* 红字发票申请下载V3
*
@ -100,78 +102,78 @@ public interface InterfaceServiceV3 {
* @return
*/
HzsqdxzRspBO downSpecialInvoiceV3(HzsqdxzReqBO hzsqdxzReq, String sldid, String kpjh, String secretId);
/**
* 导入已开发票的数据
*
* @param ddfpzxxList 订单发票协议bean集合
* @param sourceType 订单来源
* @param secretId 标识用户身份的SecretId
* @param ddfpzxxList 订单发票协议bean集合
* @param sourceType 订单来源
* @param secretId 标识用户身份的SecretId
* @param interfaceVersion 接口版本号
* @return com.dxhy.order.consumer.protocol.v4.order.DDFPDR_RSP
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/15
*/
List<DdfpdrRspBO> importIssuedInvoice(List<DdfpzxxBO> ddfpzxxList, String sourceType, String secretId, String interfaceVersion);
/**
* 导入京东已开发票的数据
*
* @param ddfpzxxList 订单发票协议bean集合
* @param sourceType 订单来源
* @param secretId 标识用户身份的SecretId
* @param ddfpzxxList 订单发票协议bean集合
* @param sourceType 订单来源
* @param secretId 标识用户身份的SecretId
* @param interfaceVersion 接口版本号
* @return com.dxhy.order.consumer.protocol.v4.order.DDFPDR_RSP
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/15
*/
List<DdfpdrRspBO> importIssuedInvoiceForJd(List<DdfpzxxBO> ddfpzxxList, String sourceType, String secretId, String interfaceVersion);
/**
* 查询商品信息
*
* @param spxxcxReq 商品信息请求协议bean
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.protocol.v4.order.SPXXCX_RSP
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/18
*/
SpxxcxRspBO queryCommodityMessage(SpxxcxReqBO spxxcxReq, String secretId);
/**
* 同步商品信息
*
* @param spxxtbReqList 同步商品信息协议bean集合
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.protocol.v4.commodity.SPXXTB_RSP
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/20
*/
List<SpxxtbRspBO> syncCommodityMessage(List<SpxxtbReqBO> spxxtbReqList, String secretId);
/**
* 查询购买方信息
*
* @param gmfxxcxReq 购买方信息查询接口请求协议bean
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return java.util.List<com.dxhy.order.consumer.protocol.v4.buyermanage.GMFXX_COMMON>
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/20
*/
GmfxxcxRspBO queryBuyerMessage(GmfxxcxReqBO gmfxxcxReq, String secretId);
/**
* 同步购买方信息
*
* @param gmfxxtbReqList 同步购买方信息请求协议bean集合
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return java.util.List<com.dxhy.order.consumer.protocol.v4.buyermanage.GMFXXTB_RSP>
* @author <a href="tivenninesongs@163.com">yaoxuguang</a>
* @date 2020/4/20
*/
List<GmfxxtbRspBO> syncBuyerMessage(List<GmfxxtbReqBO> gmfxxtbReqList, String secretId);
/**
* 税控设备信息同步
*
@ -180,7 +182,7 @@ public interface InterfaceServiceV3 {
* @return
*/
List<SksbxxtbRspBO> syncTaxEquipmentInfo(List<SksbxxtbReqBO> sksbxxtbReqList, String secretId);
/**
* 发票余量查询接口
*
@ -189,7 +191,7 @@ public interface InterfaceServiceV3 {
* @return
*/
List<FpylcxRspBO> queryInvoiceStore(FpylcxReqBO fpylcxReq, String secretId);
/**
* 企业状态信息接口
*
@ -198,7 +200,7 @@ public interface InterfaceServiceV3 {
* @return
*/
QyztcxRspBO getEnterpriseStatus(QyztcxReqBO qyztcxReq, String secretId);
/**
* 清卡状态信息接口
*
@ -207,7 +209,7 @@ public interface InterfaceServiceV3 {
* @return
*/
QkztcxRspBO getCleanCardStatus(QkztcxReqBO qkztcxReq, String secretId);
/**
* 设备在线状态信息接口
*
@ -216,158 +218,168 @@ public interface InterfaceServiceV3 {
* @return
*/
SbzxztcxRspBO getOnLineStatus(SbzxztcxReqBO sbzxztcxReq, String secretId);
/**
* 企业下架接口
*
* @param qyxjReqBOList 请求参数
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.qyxj.QyxjRspBo 响应参数
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-08-18
*/
QyxjRspBO takeDownTaxDisk(List<QyxjReqBO> qyxjReqBOList, String secretId);
/**
* 发票申领结果接收(好活专用)
*
* @param jsfpslReqBO 请求参数
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpsl.JsfpslRspBO 响应参数
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-08-18
*/
JsfpslRspBO receiveInvoiceApplication(JsfpslReqBO jsfpslReqBO, String secretId);
/**
* 税控设备信息查询接口
*
* @param sksbxxCxReqBO 请求参数
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.taxequipment.SksbxxCxRspBO 响应参数
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-08-30
*/
SksbxxCxRspBO queryTaxpayerInfo(SksbxxCxReqBO sksbxxCxReqBO, String secretId);
/**
* 发票打印接口
*
* @param fpdyReqBO 请求参数
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.ResponseV4BO 响应参数
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-08-31
*/
ResponseV4BO printInvoice(FpdyReqBO fpdyReqBO, String secretId);
/**
* 打印机查询接口
*
* @param dyjcxReqBO 请求参数
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpdy.DyjcxRspBO 响应参数
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-08-31
*/
DyjcxRspBO queryPrinter(DyjcxReqBO dyjcxReqBO, String secretId);
/**
* 企业基本信息查询接口
*
* @param qyjbxxCxReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.qyxx.QyjbxxCxRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-10
*/
QyjbxxCxRspBO queryTaxpayerGeneralInfo(QyjbxxCxReqBO qyjbxxCxReqBO, String secretId);
/**
* 申领准备信息查询接口
*
* @param slzbxxCxReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpslzb.SlzbxxCxRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-10
*/
SlzbxxCxRspBO queryApplicationPreparation(SlzbxxCxReqBO slzbxxCxReqBO, String secretId);
/**
* 发票申领接口
*
* @param fpslReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpsl.FpslRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
FpslRspBO invoiceApply(FpslReqBO fpslReqBO, String secretId);
/**
* 申领状态查询接口
*
* @param slztReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpsl.SlztRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
SlztRspBO queryInvoiceApplyStatus(SlztReqBO slztReqBO, String secretId);
/**
* 纸票接收确认接口
*
* @param zpjsqrReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.zpjsqr.ZpjsqrRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
ZpjsqrRspBO confirmInvoiceApply(ZpjsqrReqBO zpjsqrReqBO, String secretId);
/**
* 撤销申领接口
*
* @param cxslReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpsl.CxslRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
CxslRspBO cancelInvoiceApply(CxslReqBO cxslReqBO, String secretId);
/**
* 抄报状态查询接口
*
* @param cbztcxReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpcb.CbztcxRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
CbztcxRspBO queryDeclareTaxStatus(CbztcxReqBO cbztcxReqBO, String secretId);
/**
* 汇总抄报接口
*
* @param hzcbReqBO 请求协议
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.fpcb.HzcbRspBO 响应协议
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-09-13
*/
HzcbRspBO declareTaxUpload(HzcbReqBO hzcbReqBO, String secretId);
/**
* 作废结果查询接口方格
*
* @param zfcxReqBO 请求协议Bean
* @param secretId 标识用户身份的SecretId
* @param secretId 标识用户身份的SecretId
* @return com.dxhy.order.consumer.openapi.protocol.v4.invalid.ZfcxRspBO
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2021-12-27
*/
ZfcxRspBO queryInvalidInvoice(ZfcxReqBO zfcxReqBO, String secretId);
/**
* 同步集团商品税编表
*
* @param groupTaxReqBO
* @param secretId
* @return
*/
GroupTaxRespBO syncGroupTax(List<GroupTaxReqBO> groupTaxReqBO, String secretId);
}

Loading…
Cancel
Save