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

gongquanlin 2 years ago committed by WangQi
parent bbba36859b
commit a5341020be
  1. 8
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/dao/GroupTaxClassCodeMapper.java
  2. 13
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/dao/TaxClassCodeMapper.java
  3. 9
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/service/TaxClassCodeService.java
  4. 12
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/taxclass/service/impl/TaxClassCodeServiceImpl.java
  5. 12
      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. 12
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/InterfaceServiceV3.java
  22. 119
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java

@ -30,6 +30,14 @@ public interface GroupTaxClassCodeMapper {
*/
GroupTaxClassCodeEntity selectGroupTaxClassCode(String id);
/**
* 根据税号和商品名称查询商品
*
* @param id
* @return
*/
GroupTaxClassCodeEntity selectGroupTaxClassCodeByNsrsbhAndCode(@Param("xhf_nsrsbh") String nsrsbh,@Param("encoding") String encoding);
/**
* 更新
*

@ -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;
@ -20,6 +21,9 @@ public interface TaxClassCodeMapper {
*/
List<TaxClassCodeEntity> selectTaxClassCode(Map<String, Object> map);
List<TaxClassCodeEntity> selectTaxClassCodeBySpmcOrSm(String queryString);
// warning 以下sql添加redis缓存 修改请注意
/**
@ -31,6 +35,15 @@ public interface TaxClassCodeMapper {
TaxClassCodeEntity queryTaxClassCodeEntityBySpbm(String spbm);
/**
* 根据商品名称和描述查找商品分类编码
*
* @param spmc
* @return
*/
TaxClassCodeEntity queryTaxClassCodeEntityBySpmcOrMs(String spmc);
/**
* 查询所有税编表数据
*

@ -28,6 +28,15 @@ public interface TaxClassCodeService {
*/
TaxClassCodeEntity queryTaxClassCodeFromCache(String spbm);
/**
* 根据商品名称和描述查找商品分类编码
*
* @param spmc
* @param ms
* @return
*/
TaxClassCodeEntity queryTaxClassCodeFromCacheBySpmcOrMs(String spmc);
/**
* 缓存商品编码数据
*

@ -73,6 +73,18 @@ public class TaxClassCodeServiceImpl implements TaxClassCodeService {
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();

@ -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}-->

@ -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,

@ -238,6 +238,11 @@ public class ConfigurerInfo {
*/
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.*;
@ -370,4 +372,14 @@ public interface InterfaceServiceV3 {
* @date 2021-12-27
*/
ZfcxRspBO queryInvalidInvoice(ZfcxReqBO zfcxReqBO, String secretId);
/**
* 同步集团商品税编表
*
* @param groupTaxReqBO
* @param secretId
* @return
*/
GroupTaxRespBO syncGroupTax(List<GroupTaxReqBO> groupTaxReqBO, String secretId);
}

@ -19,6 +19,9 @@ import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity;
import com.dxhy.order.baseservice.module.commodity.model.protocol.SpxxcxReqBO;
import com.dxhy.order.baseservice.module.commodity.service.CommodityService;
import com.dxhy.order.baseservice.module.commodity.service.VerifyCommodityCodeService;
import com.dxhy.order.baseservice.module.taxclass.dao.GroupTaxClassCodeMapper;
import com.dxhy.order.baseservice.module.taxclass.dao.TaxClassCodeMapper;
import com.dxhy.order.baseservice.module.taxclass.model.GroupTaxClassCodeEntity;
import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity;
import com.dxhy.order.baseservice.module.taxclass.service.TaxClassCodeService;
import com.dxhy.order.baseservice.module.thirdservice.rabbitmq.service.RabbitMqSendMessageService;
@ -53,6 +56,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.*;
@ -272,6 +277,13 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
private CommonDisposeService commonDisposeService;
@Resource
private TaxClassCodeMapper taxClassCodeMapper;
@Resource
private GroupTaxClassCodeMapper groupTaxClassCodeMapper;
/**
* 发票结果查询接口业务处理
*
@ -1371,7 +1383,6 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
}
//如果申请类别为空,根据申请说明补全
HzsqdscpcBO hzsqdscpc1 = hzsqdscReq.getHZSQDSCPC();
if (StringUtils.isBlank(hzsqdscpc1.getSQLB())) {
@ -4886,10 +4897,11 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
/**
* 构建全电订单信息bean
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2022-10-20
*
* @param ddfpzxx 订单发票全数据返回协议bean
* @return java.util.List<com.dxhy.order.model.qd.OrderInfoQd>
* @author <a href="yaoxuguang@ele-cloud.com">yaoxuguang</a>
* @date 2022-10-20
*/
private List<OrderInfoQd> buildOrderInfoQd(DdfpzxxBO ddfpzxx) {
List<OrderInfoQd> orderInfoQdList = new ArrayList<>(5);
@ -5308,4 +5320,105 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
ddfpdrRsp.setZTXX("接收请求成功,等待异步处理");
return ddfpdrRsp;
}
/**
* 同步集团商品税编表
*
* @param groupTaxReqBO
* @param secretId
* @return
*/
@Override
public GroupTaxRespBO syncGroupTax(List<GroupTaxReqBO> groupTaxReqBO, String secretId) {
GroupTaxRespBO resp = GroupTaxRespBO.build(OrderInfoContentEnum.SUCCESS);
// 根据商品名称和和商品编码查下商品编码公司是否已经录入了物料编码
try {
for (GroupTaxReqBO tempBO : groupTaxReqBO) {
GroupTaxRespBO tempResp = syncGroupTax(tempBO, secretId);
if (tempResp.isFailed()) {
return tempResp;
}
}
} catch (OrderReceiveException e) {
log.error("{}同步集团商品税编表异常", LOGGER_MSG_V4, e);
resp.setZTDM(e.getCode());
resp.setZTXX(e.getMessage());
}
return resp;
}
private GroupTaxRespBO syncGroupTax(GroupTaxReqBO groupTaxReqBO, String secretId) throws OrderReceiveException {
if (StringUtils.isEmpty(groupTaxReqBO.getSpmc())) {
throw new OrderReceiveException(OrderInfoContentEnum.SYNC_GROUP_TAX_009999.getKey(), OrderInfoContentEnum.SYNC_GROUP_TAX_009999.getMessage());
}
GroupTaxRespBO groupTaxRespBO = new GroupTaxRespBO();
if (StringUtils.isNotBlank(secretId)) {
String dbSecretId = commonDisposeService.getAuthMap(groupTaxReqBO.getNsrsbh());
if (!secretId.equals(dbSecretId)) {
log.error("{}请求税号与企业维护secretId不一致!", LOGGER_MSG);
groupTaxRespBO.setZTDM(OrderInfoContentEnum.SYNC_GROUP_TAX_009998.getKey());
groupTaxRespBO.setZTXX(OrderInfoContentEnum.SYNC_GROUP_TAX_009998.getMessage());
return groupTaxRespBO;
}
}
// 处理、保存明细
// 先从集团群里查询税收分类编码是否存在
GroupTaxClassCodeEntity myEntity = groupTaxClassCodeMapper.selectGroupTaxClassCodeByNsrsbhAndCode(groupTaxReqBO.getNsrsbh(), groupTaxReqBO.getEncoding());
if (myEntity == null) {
myEntity = new GroupTaxClassCodeEntity();
}
// 查询税收分类编码
TaxClassCodeEntity taxClassCodeEntity = taxClassCodeService.queryTaxClassCodeFromCacheBySpmcOrMs(groupTaxReqBO.getSpmc());
if (taxClassCodeEntity == null) {
log.info("syncGroupTax:{}税收分类编码不存在!", LOGGER_MSG);
groupTaxRespBO.setZTDM(OrderInfoContentEnum.SYNC_GROUP_TAX_009997.getKey());
groupTaxRespBO.setZTXX(OrderInfoContentEnum.SYNC_GROUP_TAX_009997.getMessage());
return groupTaxRespBO;
}
// 维护GroupTaxClassCodeEntity 参考的GroupTaxClassCodeServiceImpl -> transtionGroupTaxClassCode
myEntity.setMerchandiseName(groupTaxReqBO.getSpmc());
myEntity.setEncoding(groupTaxReqBO.getEncoding());
//分组id
myEntity.setGroupId(null);
//税收编码
myEntity.setTaxClassCode(taxClassCodeEntity.getSpbm());
//税收名称
myEntity.setTaxClassificationName(taxClassCodeEntity.getSpmc());
myEntity.setTaxClassAbbreviation(taxClassCodeEntity.getSpjc());
myEntity.setDescription(taxClassCodeEntity.getSm());
//规格型号
myEntity.setSpecificationModel(null);
//计量单位
myEntity.setMeteringUnit(groupTaxReqBO.getUnit());
//单价
myEntity.setUnitPrice(null);
//数据来源
myEntity.setDataSource(TaxClassCodeEnum.DATA_SOURCE_5.getKey());
//匹配状态
myEntity.setMatchingState(TaxClassCodeEnum.MATCHING_STATE_0.getKey());
//数据状态
myEntity.setDataState(TaxClassCodeEnum.DATA_STATE_1.getKey());
//共享状态
myEntity.setShareState(TaxClassCodeEnum.SHARE_STATE_1.getKey());
myEntity.setDeptId(null);
if (StringUtils.isEmpty(myEntity.getId())) {
myEntity.setId(baseService.getGenerateShotKey());
myEntity.setCreateTime(new Date());
// 插入
groupTaxClassCodeMapper.insert(myEntity);
} else {
// 更新
groupTaxClassCodeMapper.updateByPrimaryKey(myEntity);
}
groupTaxRespBO.setZTDM(OrderInfoContentEnum.SYNC_GROUP_TAX_000000.getKey());
groupTaxRespBO.setZTXX(OrderInfoContentEnum.SYNC_GROUP_TAX_000000.getMessage());
return groupTaxRespBO;
}
}

Loading…
Cancel
Save