diff --git a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/controller/finance/FinanceController.java b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/controller/finance/FinanceController.java index 28f27ae7a..3253bb116 100644 --- a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/controller/finance/FinanceController.java +++ b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/controller/finance/FinanceController.java @@ -3,8 +3,10 @@ package org.sk.module.data.controller.finance; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; import org.sk.module.data.dal.bo.finance.FinanceBO; import org.sk.module.data.dal.param.finance.FinanceParam; +import org.sk.module.data.dal.param.finance.IncomeAndTaxParam; import org.sk.module.data.dal.vo.FinanceVO; import org.sk.module.data.service.finance.FinanceService; import org.springframework.beans.factory.annotation.Autowired; @@ -14,6 +16,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.validation.Valid; +import java.util.List; @RestController @RequestMapping("/finance") @@ -37,4 +40,15 @@ public class FinanceController { return CommonResult.success(BeanUtils.toBean(result, FinanceVO.class)); } + + /** + * 根据统一社会信用代码和年份查询企业收入和税收 + * @param param + * @return + */ + + @GetMapping("/getIncomeAndTax") + public CommonResult> getIncomeAndTax(@Valid @RequestBody IncomeAndTaxParam param) { + return CommonResult.success(financeService.getIncomeAndTax(param)); + } } diff --git a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/mapper/finance/FinanceMapper.java b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/mapper/finance/FinanceMapper.java index 16615c4d3..3d1790727 100644 --- a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/mapper/finance/FinanceMapper.java +++ b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/mapper/finance/FinanceMapper.java @@ -4,6 +4,8 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.sk.module.data.dal.bo.finance.FinanceBO; +import java.util.List; + @Mapper public interface FinanceMapper { @@ -14,4 +16,7 @@ public interface FinanceMapper { * @return FinanceBO */ FinanceBO getFinanceByCreditCodeAndYear(@Param("creditCode") String creditCode, @Param("year") String year); + + + List getIncomeAndTax(@Param("creditCodes")List creditCodes, @Param("year") String year); } diff --git a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/param/finance/IncomeAndTaxParam.java b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/param/finance/IncomeAndTaxParam.java new file mode 100644 index 000000000..509c5ae86 --- /dev/null +++ b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/dal/param/finance/IncomeAndTaxParam.java @@ -0,0 +1,24 @@ +package org.sk.module.data.dal.param.finance; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * 财务数据入参 + */ +@Data +public class IncomeAndTaxParam { + + /** + * 社会统一代码 + */ + @NotBlank(message = "社会统一代码不能为空") + private String creditCodes; + + /** + * 年份 + */ + private String year; + +} diff --git a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceService.java b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceService.java index e0dafe831..531cfed9c 100644 --- a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceService.java +++ b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceService.java @@ -1,11 +1,21 @@ package org.sk.module.data.service.finance; import org.sk.module.data.dal.bo.finance.FinanceBO; +import org.sk.module.data.dal.param.finance.IncomeAndTaxParam; +import org.sk.module.data.dal.vo.FinanceVO; + +import java.util.List; public interface FinanceService { FinanceBO getFinanceByCreditCodeAndYear(String creditCode, String year); + /** + * 根据 creditCode 和 year 查询财务信息 + * @param param + * @return + */ + List getIncomeAndTax(IncomeAndTaxParam param); } diff --git a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceServiceImpl.java b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceServiceImpl.java index ca34a1fd1..d774b0bfd 100644 --- a/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceServiceImpl.java +++ b/sk-module-data/sk-module-data-biz/src/main/java/org/sk/module/data/service/finance/FinanceServiceImpl.java @@ -1,13 +1,22 @@ package org.sk.module.data.service.finance; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import com.baomidou.dynamic.datasource.annotation.DS; import org.apache.commons.lang3.StringUtils; import org.sk.module.data.dal.bo.finance.FinanceBO; import org.sk.module.data.dal.mapper.finance.FinanceMapper; +import org.sk.module.data.dal.param.finance.IncomeAndTaxParam; +import org.sk.module.data.dal.vo.FinanceVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + @Service +@DS("master") public class FinanceServiceImpl implements FinanceService { @@ -21,4 +30,13 @@ public class FinanceServiceImpl implements FinanceService { } return financeMapper.getFinanceByCreditCodeAndYear(creditCode, year); } + + @Override + public List getIncomeAndTax(IncomeAndTaxParam param) { + String[] split = param.getCreditCodes().split(","); + List financeBOList = financeMapper.getIncomeAndTax(Arrays.asList(split), param.getYear()); + List financeVOList = new ArrayList<>(); + BeanUtils.copyProperties(financeBOList, financeVOList); + return financeVOList; + } } diff --git a/sk-module-data/sk-module-data-biz/src/main/resources/application.yaml b/sk-module-data/sk-module-data-biz/src/main/resources/application.yaml index 1faf5ffe5..b12f31d01 100644 --- a/sk-module-data/sk-module-data-biz/src/main/resources/application.yaml +++ b/sk-module-data/sk-module-data-biz/src/main/resources/application.yaml @@ -60,6 +60,7 @@ knife4j: # MyBatis Plus 的配置项 mybatis-plus: + mapper-locations: classpath*:mappers/**/*Mapper.xml configuration: map-underscore-to-camel-case: true # 虽然默认为 true ,但是还是显示去指定下。 global-config: