Просмотр исходного кода

1、修复es更新税务数据bug。

guanzi 3 лет назад
Родитель
Сommit
d5da575939

+ 10 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/TaxInfoService.java

@@ -15,6 +15,16 @@ import java.util.List;
  */
 public interface TaxInfoService extends IService<TaxInfo> {
 
+    /**
+     * 处理税务数据。
+     * @param year
+     * @param annualRevenue
+     * @param rdDeductible
+     * @param orgId
+     * @return
+     */
+    TaxInfo dealTax(Integer year,Double annualRevenue,Double rdDeductible,String orgId);
+
     /**
      * 处理税务数据。
      * @param addTaxInfos

+ 6 - 3
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/EnterpriseBasicInfoServiceImpl.java

@@ -109,9 +109,12 @@ public class EnterpriseBasicInfoServiceImpl extends ServiceImpl<EnterpriseBasicI
             addOtherInfos.add(addOtherInfo);
 
             // 企业税务数据。
-            addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyThree()).annualRevenue(info.getAnnualRevenueThree()).rdDeductible(info.getRdDeductibleThree()).build());
-            addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyTwo()).annualRevenue(info.getAnnualRevenueTwo()).rdDeductible(info.getRdDeductibleTwo()).build());
-            addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyOne()).annualRevenue(info.getAnnualRevenueOne()).rdDeductible(info.getRdDeductibleOne()).build());
+            addTaxInfos.add(taxInfoService.dealTax(info.getNearlyThree(),info.getAnnualRevenueThree(),info.getRdDeductibleThree(),info.getId()));
+            addTaxInfos.add(taxInfoService.dealTax(info.getNearlyTwo(),info.getAnnualRevenueTwo(),info.getRdDeductibleTwo(),info.getId()));
+            addTaxInfos.add(taxInfoService.dealTax(info.getNearlyOne(),info.getAnnualRevenueOne(),info.getRdDeductibleOne(),info.getId()));
+            // addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyThree()).annualRevenue(info.getAnnualRevenueThree()).rdDeductible(info.getRdDeductibleThree()).build());
+            // addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyTwo()).annualRevenue(info.getAnnualRevenueTwo()).rdDeductible(info.getRdDeductibleTwo()).build());
+            // addTaxInfos.add(TaxInfo.builder().enterpriseId(info.getId()).taxYear(info.getNearlyOne()).annualRevenue(info.getAnnualRevenueOne()).rdDeductible(info.getRdDeductibleOne()).build());
 
             // 企业人员信息。
             addPersonalInfos = personalInfoService.dealPersonInfo(basicInfos);

+ 11 - 8
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/ResourceLibraryServiceImpl.java

@@ -62,15 +62,18 @@ public class ResourceLibraryServiceImpl extends ServiceImpl<ResourceLibraryMappe
             List<TaxParam> rdTaxParams = new ArrayList<>();
             TaxParam rdTaxParam;
             for (TaxInfo taxInfo : taxInfos) {
-                revenueTaxParam = new TaxParam();
-                revenueTaxParam.setYear(taxInfo.getTaxYear());
-                revenueTaxParam.setVal(taxInfo.getAnnualRevenue());
-                revenueTaxParams.add(revenueTaxParam);
+                if (info.getId().equals(taxInfo.getEnterpriseId())){
+                    // 同一家企业。
+                    revenueTaxParam = new TaxParam();
+                    revenueTaxParam.setYear(taxInfo.getTaxYear());
+                    revenueTaxParam.setVal(taxInfo.getAnnualRevenue());
+                    revenueTaxParams.add(revenueTaxParam);
 
-                rdTaxParam = new TaxParam();
-                rdTaxParam.setYear(taxInfo.getTaxYear());
-                rdTaxParam.setVal(taxInfo.getRdDeductible());
-                rdTaxParams.add(rdTaxParam);
+                    rdTaxParam = new TaxParam();
+                    rdTaxParam.setYear(taxInfo.getTaxYear());
+                    rdTaxParam.setVal(taxInfo.getRdDeductible());
+                    rdTaxParams.add(rdTaxParam);
+                }
             }
 
             resourceLibrary.setAnnualRevenue(JSON.toJSONString(revenueTaxParams));

+ 21 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/TaxInfoServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.pavis.app.saasbacken.dao.TaxInfoMapper;
 import com.pavis.app.saasbacken.entity.TaxInfo;
 import com.pavis.app.saasbacken.service.TaxInfoService;
+import com.pavis.app.saasbacken.utils.CommonUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -25,6 +26,26 @@ public class TaxInfoServiceImpl extends ServiceImpl<TaxInfoMapper, TaxInfo> impl
     @Autowired
     private TaxInfoMapper taxInfoMapper;
 
+    @Override
+    public TaxInfo dealTax(Integer year, Double annualRevenue, Double rdDeductible, String orgId) {
+        List<TaxInfo> selTaxInfos = taxInfoMapper.selectList(new QueryWrapper<TaxInfo>().lambda()
+                .eq(TaxInfo::getEnterpriseId,orgId).eq(TaxInfo::getTaxYear,year));
+        TaxInfo taxInfo;
+        List<TaxInfo> taxInfos = new ArrayList<>();
+        if (selTaxInfos.size() > 0){
+            // 已存在税务数据信息。
+            taxInfo = TaxInfo.builder().id(selTaxInfos.get(0).getId())
+                    .enterpriseId(orgId).taxYear(year).annualRevenue(annualRevenue).rdDeductible(rdDeductible).build();
+            taxInfos.add(taxInfo);
+        }else {
+            // 企业税务数据不存在。
+            taxInfo = TaxInfo.builder().id(CommonUtils.initId())
+                    .enterpriseId(orgId).taxYear(year).annualRevenue(annualRevenue).rdDeductible(rdDeductible).build();
+            taxInfos.add(taxInfo);
+        }
+        return taxInfo;
+    }
+
     @Override
     public List<TaxInfo> dealTaxInfo(List<TaxInfo> addTaxInfos, String orgId) {
         List<TaxInfo> taxInfos = new ArrayList<>();