From 50fb58286ed3b718c39a97e0987ee7561a295651 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 04 七月 2025 17:56:41 +0800
Subject: [PATCH] git ch

---
 server/service/src/main/java/com/doumee/service/business/impl/TaxesServiceImpl.java |   48 +++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 39 insertions(+), 9 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/TaxesServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/TaxesServiceImpl.java
index a980821..5090c9d 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/TaxesServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/TaxesServiceImpl.java
@@ -189,6 +189,20 @@
         update.setImgurl(taxes.getImgurl());
         taxesMapper.updateById(update);
 
+        //鏌ヨ寮�绁ㄦ槑缁嗚褰�
+        List<TaxDetial> taxDetialList = taxDetialMapper.selectList(new QueryWrapper<TaxDetial>().lambda()
+                .eq(TaxDetial::getTaxId,taxes.getId())
+                .eq(TaxDetial::getType,Constants.TWO));
+        if(CollectionUtils.isNotEmpty(taxDetialList)){
+            for (TaxDetial taxDetial:taxDetialList) {
+                taxesMapper.update(null,new UpdateWrapper<Taxes>().lambda()
+                                .set(Taxes::getEditDate,new Date())
+                                .set(Taxes::getEditor,user.getId())
+                        .set(Taxes::getStatus,3).eq(Taxes::getId,taxDetial.getDelTaxId()));
+            }
+        }
+
+
         //瀛樺偍寰呭姙淇℃伅
         Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.TAXES;
         //鍒犻櫎鍏朵粬寰呭姙
@@ -235,12 +249,14 @@
         MPJLambdaWrapper<Taxes> queryWrapper = new MPJLambdaWrapper<>();
         queryWrapper.selectAll(Taxes.class);
         queryWrapper.selectAs(Solutions::getName,Taxes::getSolutionName);
+        queryWrapper.selectAs(SystemUser::getRealname,Taxes::getCancelUserName);
         queryWrapper.leftJoin(Solutions.class,Solutions::getId,Taxes::getSolutionId);
+        queryWrapper.leftJoin(SystemUser.class,SystemUser::getId,Taxes::getCancelUserId);
         Taxes model =taxesJoinMapper.selectById(id);
         if(model==null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
             throw  new BusinessException(ResponseStatus.DATA_EMPTY);
         }
-        if(Constants.equalsInteger(model.getType(),Constants.ZERO)){
+        if(Constants.equalsInteger(model.getApplyType(),Constants.ZERO)){
             List<TaxDetial> detialList = getDetailsApplysListById(id);
             model.setApplyList(detialList);
         }else{
@@ -272,8 +288,12 @@
             queryWrapper.selectAll(TaxDetial.class);
             queryWrapper.selectAs(InsuranceApply::getCode,TaxDetial::getApplyCode);
             queryWrapper.selectAs(Solutions::getName,TaxDetial::getSolutionName);
+            queryWrapper.selectAs(ApplyChange::getValidCode,TaxDetial::getChangApplyCode);
             queryWrapper.leftJoin(InsuranceApply.class,InsuranceApply::getId,TaxDetial::getInsuranceApplyId);
             queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId);
+            queryWrapper.leftJoin(ApplyChange.class,ApplyChange::getId,TaxDetial::getApplyChangeId);
+            queryWrapper.in(TaxDetial::getType,Constants.ZERO,Constants.ONE);
+            queryWrapper.eq(TaxDetial::getTaxId,id);
             List<TaxDetial> detialList =  taxDetailJoinMapper.selectJoinList(TaxDetial.class,queryWrapper.orderByAsc(TaxDetial::getType));
             return detialList;
     }
@@ -353,6 +373,8 @@
         Taxes queryModel = pageWrap.getModel();
         if(!user.getType().equals(Constants.ONE)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炰紒涓氱敤鎴锋棤娉曡繘琛岃涓氬姟鏌ヨ");
+        }else{
+            queryWrapper.eq(Taxes::getCompanyId,user.getCompanyId());
         }
         if(!Objects.isNull(queryModel)){
             queryWrapper.ge(pageWrap.getModel().getStartDate() != null,Taxes::getCreateDate, (pageWrap.getModel().getStartDate()));
@@ -443,6 +465,7 @@
         taxes.setAddr(entrustInvoicingDTO.getAddress());
         taxes.setCompanyName(company.getName());
         taxes.setApplyType(Constants.ZERO);
+        taxes.setTaxBank(company.getTaxBank());
         taxesMapper.insert(taxes);
 
         List<TaxDetial> taxDetialList = entrustInvoicingDTO.getTaxDetialList();
@@ -453,9 +476,10 @@
             ){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST);
             }
-            //鏌ヨ姣忎釜淇濆崟涓嬪彲浠ユ姇淇濈殑閲戦
+            //鏌ヨ姣忎釜淇濆崟涓嬪彲浠ユ姤閿�鐨勯噾棰�
             InsuranceApply insuranceApply = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,new MPJLambdaWrapper<InsuranceApply>()
                     .selectAll(InsuranceApply.class)
+//                    .select(" ifnull(( select sum(td.fee) from taxes ts inner join tax_detial td on td.TAX_ID = ts.id  where ts.status  = 1 and td.INSURANCE_APPLY_ID = t.id ),0) as taxesMoney")
                     .select(" ifnull(( select sum(td.fee) from taxes ts inner join tax_detial td on td.TAX_ID = ts.id  where ts.status != 2 and td.INSURANCE_APPLY_ID = t.id ),0) as taxesMoney ")
                     .eq(InsuranceApply::getId,taxDetial.getInsuranceApplyId())
             );
@@ -463,7 +487,8 @@
                 throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"淇濆崟鍙枫��"+taxDetial.getApplyCode()+"銆戞湭鏌ヨ鍒颁繚鍗曚俊鎭�");
             }
             if(insuranceApply.getCurrentFee().subtract(insuranceApply.getTaxesMoney()).compareTo(taxDetial.getFee())!=Constants.ZERO){
-                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"淇濆崟鍙枫��"+taxDetial.getApplyCode()+"銆戝彲鎶ラ攢閲戦閿欒銆�"+insuranceApply.getCurrentFee().subtract(insuranceApply.getTaxesMoney())+"銆�");
+                //throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"淇濆崟鍙枫��"+taxDetial.getApplyCode()+"銆戝彲鎶ラ攢閲戦閿欒銆�"+insuranceApply.getCurrentFee().subtract(insuranceApply.getTaxesMoney())+"銆�");
+                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"淇濆崟鍙枫��"+taxDetial.getApplyCode()+"銆戜笉婊¤冻寮�绁ㄦ潯浠�");
             }
             taxDetial.setCreator(user.getId());
             taxDetial.setCreateDate(new Date());
@@ -472,7 +497,7 @@
             taxDetial.setTotalFee(insuranceApply.getCurrentFee());
             taxDetial.setType(Constants.ZERO);
         }
-        taxDetailJoinMapper.insertBatchSomeColumn(taxDetialList);
+        taxDetailJoinMapper.insert(taxDetialList);
 
 
         //瀛樺偍寰呭姙淇℃伅
@@ -540,6 +565,7 @@
         List<ApplyChange> applyChangeList = applyChangeJoinMapper.selectJoinList(ApplyChange.class,new MPJLambdaWrapper<ApplyChange>()
                 .selectAll(ApplyChange.class)
                 .selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode)
+                .selectAs(Solutions::getName,ApplyChange::getSolutionsName)
                 .select("( select count(1) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID and ad.TYPE = 0  ) as addNum ")
                 .select("( select count(1) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID and ad.TYPE = 1  ) as delNum ")
                 .select("( select ifnull(sum(ad.FEE),0) from apply_chagne_detail ad where t.id = ad.APPLY_CHANGE_ID  ) as changeMoney" )
@@ -553,11 +579,13 @@
 
         if(CollectionUtils.isNotEmpty(applyChangeList)){
             for (ApplyChange applyChange:applyChangeList) {
-                insuranceApply.setFee(insuranceApply.getFee().subtract(applyChange.getFee()));
-                TaxesInvoicingVO taxesInvoicingVO = applyChange.toTaxesInvoicingVO();
                 if(!Objects.isNull(insuranceApply)){
-                    taxesInvoicingVO.setAmount(BigDecimal.ZERO);
+                    insuranceApply.setFee(insuranceApply.getFee().subtract(applyChange.getFee()));
                 }
+                TaxesInvoicingVO taxesInvoicingVO = applyChange.toTaxesInvoicingVO();
+//                if(!Objects.isNull(insuranceApply)){
+//                    taxesInvoicingVO.setAmount(BigDecimal.ZERO);
+//                }
                 taxesInvoicingVOList.add(taxesInvoicingVO);
             }
         }
@@ -613,6 +641,7 @@
         taxes.setType(directInvoicingDTO.getType());
         taxes.setTaxCode(company.getTaxCode());
         taxes.setTaxAccount(company.getTaxAccount());
+        taxes.setTaxBank(company.getTaxBank());
         taxes.setTaxAddr(company.getTaxAddr());
         taxes.setAddr(directInvoicingDTO.getAddress());
         taxes.setCompanyName(company.getName());
@@ -639,8 +668,8 @@
             taxDetial.setTaxId(taxes.getId());
             taxDetial.setTotalFee(taxesInvoicingVO.getAmount());
             taxDetial.setFee(taxesInvoicingVO.getAmount());
+            taxDetial.setInsuranceApplyId(taxes.getInsuranceApplyId());
             if(taxesInvoicingVO.getType().equals(Constants.ZERO)){
-                taxDetial.setInsuranceApplyId(taxesInvoicingVO.getId());
                 taxDetial.setType(taxesInvoicingVO.getType());
             }else if(taxesInvoicingVO.getType().equals(Constants.ONE)){
                 taxDetial.setApplyChangeId(taxesInvoicingVO.getId());
@@ -666,12 +695,13 @@
                 taxDetial.setTotalFee(chTaxes.getPrice());
                 taxDetial.setFee(chTaxes.getPrice());
                 taxDetial.setDelTaxId(chTaxes.getId());
+                taxDetial.setInsuranceApplyId(taxes.getInsuranceApplyId());
                 taxDetial.setType(Constants.TWO);
                 taxDetailList.add(taxDetial);
             }
         }
         if(CollectionUtils.isNotEmpty(taxDetailList)){
-            taxDetailJoinMapper.insertBatchSomeColumn(taxDetailList);
+            taxDetailJoinMapper.insert(taxDetailList);
         }else{
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犲彲寮�绁ㄦ暟鎹紝鎿嶄綔澶辫触");
         }

--
Gitblit v1.9.3