10-20-决算清
This commit is contained in:
		| @ -131,7 +131,7 @@ public class XzdJsqdTz extends BaseEntity { | ||||
|     /** | ||||
|      * wbs | ||||
|      */ | ||||
|     private String wbs; | ||||
|     private String tzhwbs; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|  | ||||
| @ -0,0 +1,51 @@ | ||||
| package org.dromara.xzd.domain; | ||||
|  | ||||
| import org.dromara.common.mybatis.core.domain.BaseEntity; | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| import java.io.Serial; | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定对象 xzd_zbjghyd | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @TableName("xzd_zbjghyd") | ||||
| public class XzdZbjghyd extends BaseEntity { | ||||
|  | ||||
|     @Serial | ||||
|     private static final long serialVersionUID = 1L; | ||||
|  | ||||
|     /** | ||||
|      * id | ||||
|      */ | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** | ||||
|      * 关联id | ||||
|      */ | ||||
|     private Long mainId; | ||||
|  | ||||
|     /** | ||||
|      * 质保期(月份) | ||||
|      */ | ||||
|     private Long zbq; | ||||
|  | ||||
|     /** | ||||
|      * 归还比例 | ||||
|      */ | ||||
|     private Long ghbl; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|      */ | ||||
|     private String remark; | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -10,10 +10,14 @@ import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
| import jakarta.validation.constraints.*; | ||||
| import org.dromara.xzd.domain.XzdJsqdTz; | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.springframework.format.annotation.DateTimeFormat; | ||||
|  | ||||
| import java.math.BigDecimal; | ||||
| import java.util.Date; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 承包合同竣工结算业务对象 xzd_contract_account | ||||
| @ -168,4 +172,24 @@ public class XzdContractAccountBo extends BaseEntity { | ||||
|  | ||||
|     private String fileId; | ||||
|  | ||||
|     /** | ||||
|      * 决算清单 | ||||
|      */ | ||||
|     private List<XzdJsqdTz> jsqd; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-奖励 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> jl; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-扣款 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> kk; | ||||
|  | ||||
|     /** | ||||
|      * 质保金归还约定 | ||||
|      */ | ||||
|     private List<XzdZbjghyd> zbjghyd; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -125,9 +125,9 @@ public class XzdJsqdTzBo extends BaseEntity { | ||||
|     private String ywbs; | ||||
|  | ||||
|     /** | ||||
|      * wbs | ||||
|      * 调整后wbs | ||||
|      */ | ||||
|     private String wbs; | ||||
|     private String tzhwbs; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|  | ||||
| @ -1,6 +1,7 @@ | ||||
| package org.dromara.xzd.domain.bo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import org.dromara.xzd.domain.XzdJsqdTz; | ||||
| import org.dromara.xzd.domain.XzdWorkcontractCompletionAdjust; | ||||
| import org.dromara.common.mybatis.core.domain.BaseEntity; | ||||
| import org.dromara.common.core.validate.AddGroup; | ||||
| @ -9,10 +10,12 @@ import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
| import jakarta.validation.constraints.*; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.springframework.format.annotation.DateTimeFormat; | ||||
|  | ||||
| import java.math.BigDecimal; | ||||
| import java.util.Date; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 承包合同竣工结算调整业务对象 xzd_workcontract_completion_adjust | ||||
| @ -116,5 +119,19 @@ public class XzdWorkcontractCompletionAdjustBo extends BaseEntity { | ||||
|      */ | ||||
|     private Long danjuId; | ||||
|  | ||||
|     /** | ||||
|      *  决算清单调整 | ||||
|      */ | ||||
|     private List<XzdJsqdTz> jsqdTz; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-扣款 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> kk; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-奖励 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> jl; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -0,0 +1,49 @@ | ||||
| package org.dromara.xzd.domain.bo; | ||||
|  | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.common.mybatis.core.domain.BaseEntity; | ||||
| import org.dromara.common.core.validate.EditGroup; | ||||
| import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
| import jakarta.validation.constraints.*; | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定业务对象 xzd_zbjghyd | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @AutoMapper(target = XzdZbjghyd.class, reverseConvertGenerate = false) | ||||
| public class XzdZbjghydBo extends BaseEntity { | ||||
|  | ||||
|     /** | ||||
|      * id | ||||
|      */ | ||||
|     @NotNull(message = "id不能为空", groups = { EditGroup.class }) | ||||
|     private Long id; | ||||
|  | ||||
|     /** | ||||
|      * 关联id | ||||
|      */ | ||||
|     private Long mainId; | ||||
|  | ||||
|     /** | ||||
|      * 质保期(月份) | ||||
|      */ | ||||
|     private Long zbq; | ||||
|  | ||||
|     /** | ||||
|      * 归还比例 | ||||
|      */ | ||||
|     private Long ghbl; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|      */ | ||||
|     private String remark; | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -9,11 +9,15 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; | ||||
| import com.alibaba.excel.annotation.ExcelProperty; | ||||
| import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
| import org.dromara.xzd.domain.XzdJsqdTz; | ||||
| import org.dromara.xzd.domain.XzdSettlementRules; | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.springframework.format.annotation.DateTimeFormat; | ||||
|  | ||||
| import java.io.Serial; | ||||
| import java.io.Serializable; | ||||
| import java.util.List; | ||||
|  | ||||
|  | ||||
| /** | ||||
| @ -214,4 +218,24 @@ public class XzdContractAccountVo implements Serializable { | ||||
|  | ||||
|     private String fileId; | ||||
|  | ||||
|     /** | ||||
|      * 决算清单 | ||||
|      */ | ||||
|     private List<XzdJsqdTz> jsqd; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-奖励 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> jl; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-扣款 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> kk; | ||||
|  | ||||
|     /** | ||||
|      * 质保金归还约定 | ||||
|      */ | ||||
|     private List<XzdZbjghyd> zbjghyd; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -152,10 +152,10 @@ public class XzdJsqdTzVo implements Serializable { | ||||
|     private String ywbs; | ||||
|  | ||||
|     /** | ||||
|      * wbs | ||||
|      * 调整后wbs | ||||
|      */ | ||||
|     @ExcelProperty(value = "wbs") | ||||
|     private String wbs; | ||||
|     @ExcelProperty(value = "调整后wbs") | ||||
|     private String tzhwbs; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|  | ||||
| @ -5,6 +5,7 @@ import java.util.Date; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import org.dromara.xzd.domain.XzdContractAccount; | ||||
| import org.dromara.xzd.domain.XzdJsqdTz; | ||||
| import org.dromara.xzd.domain.XzdWorkcontractCompletionAdjust; | ||||
| import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; | ||||
| import com.alibaba.excel.annotation.ExcelProperty; | ||||
| @ -12,10 +13,12 @@ import org.dromara.common.excel.annotation.ExcelDictFormat; | ||||
| import org.dromara.common.excel.convert.ExcelDictConvert; | ||||
| import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.springframework.format.annotation.DateTimeFormat; | ||||
|  | ||||
| import java.io.Serial; | ||||
| import java.io.Serializable; | ||||
| import java.util.List; | ||||
|  | ||||
|  | ||||
| /** | ||||
| @ -140,5 +143,19 @@ public class XzdWorkcontractCompletionAdjustVo implements Serializable { | ||||
|     @ExcelProperty(value = "单据引用ID") | ||||
|     private Long danjuId; | ||||
|  | ||||
|     /** | ||||
|      *  决算清单调整 | ||||
|      */ | ||||
|     private List<XzdJsqdTz> jsqdTz; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-扣款 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> kk; | ||||
|  | ||||
|     /** | ||||
|      * 奖励与扣款-奖励 | ||||
|      */ | ||||
|     private List<XzdJsDeductionItems> jl; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -0,0 +1,58 @@ | ||||
| package org.dromara.xzd.domain.vo; | ||||
|  | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; | ||||
| import com.alibaba.excel.annotation.ExcelProperty; | ||||
| import io.github.linpeilie.annotations.AutoMapper; | ||||
| import lombok.Data; | ||||
|  | ||||
| import java.io.Serial; | ||||
| import java.io.Serializable; | ||||
|  | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定视图对象 xzd_zbjghyd | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| @Data | ||||
| @ExcelIgnoreUnannotated | ||||
| @AutoMapper(target = XzdZbjghyd.class) | ||||
| public class XzdZbjghydVo implements Serializable { | ||||
|  | ||||
|     @Serial | ||||
|     private static final long serialVersionUID = 1L; | ||||
|  | ||||
|     /** | ||||
|      * id | ||||
|      */ | ||||
|     @ExcelProperty(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** | ||||
|      * 关联id | ||||
|      */ | ||||
|     @ExcelProperty(value = "关联id") | ||||
|     private Long mainId; | ||||
|  | ||||
|     /** | ||||
|      * 质保期(月份) | ||||
|      */ | ||||
|     @ExcelProperty(value = "质保期(月份)") | ||||
|     private Long zbq; | ||||
|  | ||||
|     /** | ||||
|      * 归还比例 | ||||
|      */ | ||||
|     @ExcelProperty(value = "归还比例") | ||||
|     private Long ghbl; | ||||
|  | ||||
|     /** | ||||
|      * 备注 | ||||
|      */ | ||||
|     @ExcelProperty(value = "备注") | ||||
|     private String remark; | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,15 @@ | ||||
| package org.dromara.xzd.mapper; | ||||
|  | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.xzd.domain.vo.XzdZbjghydVo; | ||||
| import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定Mapper接口 | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| public interface XzdZbjghydMapper extends BaseMapperPlus<XzdZbjghyd, XzdZbjghydVo> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,70 @@ | ||||
| package org.dromara.xzd.service; | ||||
|  | ||||
| import org.dromara.xzd.domain.vo.XzdZbjghydVo; | ||||
| import org.dromara.xzd.domain.bo.XzdZbjghydBo; | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.common.mybatis.core.page.TableDataInfo; | ||||
| import org.dromara.common.mybatis.core.page.PageQuery; | ||||
|  | ||||
| import com.baomidou.mybatisplus.extension.service.IService; | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定Service接口 | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| public interface IXzdZbjghydService extends IService<XzdZbjghyd>{ | ||||
|  | ||||
|     /** | ||||
|      * 查询质保金归还约定 | ||||
|      * | ||||
|      * @param id 主键 | ||||
|      * @return 质保金归还约定 | ||||
|      */ | ||||
|     XzdZbjghydVo queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 分页查询质保金归还约定列表 | ||||
|      * | ||||
|      * @param bo        查询条件 | ||||
|      * @param pageQuery 分页参数 | ||||
|      * @return 质保金归还约定分页列表 | ||||
|      */ | ||||
|     TableDataInfo<XzdZbjghydVo> queryPageList(XzdZbjghydBo bo, PageQuery pageQuery); | ||||
|  | ||||
|     /** | ||||
|      * 查询符合条件的质保金归还约定列表 | ||||
|      * | ||||
|      * @param bo 查询条件 | ||||
|      * @return 质保金归还约定列表 | ||||
|      */ | ||||
|     List<XzdZbjghydVo> queryList(XzdZbjghydBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 新增质保金归还约定 | ||||
|      * | ||||
|      * @param bo 质保金归还约定 | ||||
|      * @return 是否新增成功 | ||||
|      */ | ||||
|     Boolean insertByBo(XzdZbjghydBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 修改质保金归还约定 | ||||
|      * | ||||
|      * @param bo 质保金归还约定 | ||||
|      * @return 是否修改成功 | ||||
|      */ | ||||
|     Boolean updateByBo(XzdZbjghydBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并批量删除质保金归还约定信息 | ||||
|      * | ||||
|      * @param ids     待删除的主键集合 | ||||
|      * @param isValid 是否进行有效性校验 | ||||
|      * @return 是否删除成功 | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
| } | ||||
| @ -14,11 +14,16 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.dromara.common.utils.BatchNumberGenerator; | ||||
| import org.dromara.system.service.impl.SysOssServiceImpl; | ||||
| import org.dromara.xzd.domain.XzdJsqdTz; | ||||
| import org.dromara.xzd.domain.XzdSettlementRules; | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.xzd.domain.dto.QuerCorrespondentDto; | ||||
| import org.dromara.xzd.domain.vo.XzdContractDetailsVo; | ||||
| import org.dromara.xzd.domain.vo.XzdSettlementRulesVo; | ||||
| import org.dromara.xzd.service.IXzdCorrespondentList; | ||||
| import org.dromara.xzd.settlement.domain.XzdContractInventory; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.dromara.xzd.settlement.service.impl.XzdJsDeductionItemsServiceImpl; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.dromara.xzd.domain.bo.XzdContractAccountBo; | ||||
| @ -51,6 +56,12 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun | ||||
|     private IXzdCorrespondentList iXzdCorrespondentList; | ||||
|     @Autowired | ||||
|     private SysOssServiceImpl sysOssService; | ||||
|     @Autowired | ||||
|     private XzdJsDeductionItemsServiceImpl xzdJsDeductionItemsService; | ||||
|     @Autowired | ||||
|     private XzdZbjghydServiceImpl xzdZbjghydService; | ||||
|     @Autowired | ||||
|     private XzdJsqdTzServiceImpl xzdJsqdTzService; | ||||
|  | ||||
|     /** | ||||
|      * 查询承包合同竣工结算 | ||||
| @ -141,6 +152,45 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun | ||||
|         if (!flag) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         //决算清单 | ||||
|         if (bo.getJsqd() != null && !bo.getJsqd().isEmpty()){ | ||||
|             for (XzdJsqdTz jsqdTz : bo.getJsqd()) { | ||||
|                 jsqdTz.setMainId(add.getId()); | ||||
|                 jsqdTz.setType("1"); | ||||
|                 jsqdTz.setBm(BatchNumberGenerator.generateBatchNumber("JSQD-")); | ||||
|             } | ||||
|             xzdJsqdTzService.saveBatch(bo.getJsqd()); | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-奖励 | ||||
|         if (bo.getJl() != null && !bo.getJl().isEmpty()){ | ||||
|             for (XzdJsDeductionItems xzdJsDeductionItems : bo.getJl()) { | ||||
|                 xzdJsDeductionItems.setMainDocId(add.getId()); | ||||
|                 xzdJsDeductionItems.setDetailType(2L); | ||||
|                 xzdJsDeductionItems.setTableName("xzd_contract_account"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-扣款 | ||||
|         if (bo.getKk() != null && !bo.getKk().isEmpty()){ | ||||
|             for (XzdJsDeductionItems xzdJsDeductionItems : bo.getKk()) { | ||||
|                 xzdJsDeductionItems.setMainDocId(add.getId()); | ||||
|                 xzdJsDeductionItems.setDetailType(1L); | ||||
|                 xzdJsDeductionItems.setTableName("xzd_contract_account"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         } | ||||
|  | ||||
|         //质保金归还约定 | ||||
|         if (bo.getZbjghyd() != null && !bo.getZbjghyd().isEmpty()){ | ||||
|             for (XzdZbjghyd zbjghyd : bo.getZbjghyd()) { | ||||
|                 zbjghyd.setMainId(add.getId()); | ||||
|             } | ||||
|             xzdZbjghydService.saveBatch(bo.getZbjghyd()); | ||||
|         } | ||||
|  | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
| @ -174,6 +224,71 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //决算清单 | ||||
|         if (bo.getJsqd() != null && !bo.getJsqd().isEmpty()){ | ||||
|             if (old.getJsqd() != null && !old.getJsqd().isEmpty()){ | ||||
|                 xzdJsqdTzService.removeByIds(old.getJsqd()); | ||||
|             } | ||||
|             for (XzdJsqdTz businessChange : bo.getJsqd()) { | ||||
|                 businessChange.setMainId(update.getId()); | ||||
|                 businessChange.setType("1"); | ||||
|             } | ||||
|             xzdJsqdTzService.saveBatch(bo.getJsqd()); | ||||
|         }else { | ||||
|             if (old.getJsqd() != null && !old.getJsqd().isEmpty()){ | ||||
|                 xzdJsqdTzService.removeByIds(old.getJsqd()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-奖励 | ||||
|         if (bo.getJl() != null && !bo.getJl().isEmpty()){ | ||||
|             if (old.getJl() != null && !old.getJl().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getJl()); | ||||
|             } | ||||
|             for (XzdJsDeductionItems xzdJsDeductionItems : bo.getJl()) { | ||||
|                 xzdJsDeductionItems.setMainDocId(update.getId()); | ||||
|                 xzdJsDeductionItems.setDetailType(2L); | ||||
|                 xzdJsDeductionItems.setTableName("xzd_contract_account"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         }else { | ||||
|             if (old.getJl() != null && !old.getJl().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getJl()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-扣款 | ||||
|         if (bo.getKk() != null && !bo.getKk().isEmpty()){ | ||||
|             if (old.getKk() != null && !old.getKk().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getKk()); | ||||
|             } | ||||
|             for (XzdJsDeductionItems xzdJsDeductionItems : bo.getKk()) { | ||||
|                 xzdJsDeductionItems.setMainDocId(update.getId()); | ||||
|                 xzdJsDeductionItems.setDetailType(1L); | ||||
|                 xzdJsDeductionItems.setTableName("xzd_contract_account"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         }else { | ||||
|             if (old.getKk() != null && !old.getKk().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getKk()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //质保金归还约定 | ||||
|         if (bo.getZbjghyd() != null && !bo.getZbjghyd().isEmpty()){ | ||||
|             if (old.getZbjghyd() != null && !old.getZbjghyd().isEmpty()){ | ||||
|                 xzdZbjghydService.removeByIds(old.getZbjghyd()); | ||||
|             } | ||||
|             for (XzdZbjghyd zbjghyd : bo.getZbjghyd()) { | ||||
|                 zbjghyd.setMainId(update.getId()); | ||||
|             } | ||||
|             xzdZbjghydService.saveBatch(bo.getZbjghyd()); | ||||
|         }else { | ||||
|             if (old.getZbjghyd() != null && !old.getZbjghyd().isEmpty()){ | ||||
|                 xzdZbjghydService.removeByIds(old.getZbjghyd()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         return b; | ||||
|     } | ||||
|  | ||||
| @ -196,6 +311,28 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|  | ||||
|         for (Long id : ids) { | ||||
|             XzdContractAccountVo vo = queryById(id); | ||||
|  | ||||
|             //扣款与奖励 | ||||
|             LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper.eq(XzdJsDeductionItems::getMainDocId, id); | ||||
|             queryWrapper.eq(XzdJsDeductionItems::getTableName, "xzd_contract_account"); | ||||
|             xzdJsDeductionItemsService.remove(queryWrapper); | ||||
|  | ||||
|             //结算清单 | ||||
|             LambdaQueryWrapper<XzdJsqdTz> queryWrapper1 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper1.eq(XzdJsqdTz::getMainId, id); | ||||
|             queryWrapper1.eq(XzdJsqdTz::getType, "1"); | ||||
|             xzdJsqdTzService.remove(queryWrapper1); | ||||
|  | ||||
|             //质保金归还约定 | ||||
|             LambdaQueryWrapper<XzdZbjghyd> queryWrapper2 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper2.eq(XzdZbjghyd::getMainId, id); | ||||
|             xzdZbjghydService.remove(queryWrapper2); | ||||
|         } | ||||
|  | ||||
|         return baseMapper.deleteByIds(ids) > 0; | ||||
|     } | ||||
|  | ||||
| @ -256,6 +393,39 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             //决算清单 | ||||
|             LambdaQueryWrapper<XzdJsqdTz> queryWrapper = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper.eq(XzdJsqdTz::getMainId, vo.getId()); | ||||
|             queryWrapper.eq(XzdJsqdTz::getType, "1"); | ||||
|             List<XzdJsqdTz> jsqdTzs = xzdJsqdTzService.list(queryWrapper); | ||||
|             if (jsqdTzs != null && !jsqdTzs.isEmpty()){ | ||||
|                 vo.setJsqd(jsqdTzs); | ||||
|             } | ||||
|             //扣款与奖励-扣款 | ||||
|             LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper1 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getMainDocId, vo.getId()); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getTableName, "xzd_contract_account"); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getDetailType, 1L); | ||||
|             List<XzdJsDeductionItems> xzdJsDeductionItems = xzdJsDeductionItemsService.list(queryWrapper1); | ||||
|             if (xzdJsDeductionItems != null && !xzdJsDeductionItems.isEmpty()){ | ||||
|                 vo.setKk(xzdJsDeductionItems); | ||||
|             } | ||||
|             //扣款与奖励-奖励 | ||||
|             LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper2 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getMainDocId, vo.getId()); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getTableName, "xzd_contract_account"); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getDetailType, 2L); | ||||
|             List<XzdJsDeductionItems> xzdJsDeductionItems1 = xzdJsDeductionItemsService.list(queryWrapper2); | ||||
|             if (xzdJsDeductionItems1 != null && !xzdJsDeductionItems1.isEmpty()){ | ||||
|                 vo.setJl(xzdJsDeductionItems1); | ||||
|             } | ||||
|             //质保金归还约定 | ||||
|             LambdaQueryWrapper<XzdZbjghyd> queryWrapper3 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper3.eq(XzdZbjghyd::getMainId, vo.getId()); | ||||
|             List<XzdZbjghyd> xzdZbjghyds = xzdZbjghydService.list(queryWrapper3); | ||||
|             if (xzdZbjghyds != null && !xzdZbjghyds.isEmpty()){ | ||||
|                 vo.setZbjghyd(xzdZbjghyds); | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -190,7 +190,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|         //合同内清单 | ||||
|         if (bo.getHtnqd() != null && !bo.getHtnqd().isEmpty()){ | ||||
|             for (XzdContractInventory inventory : bo.getHtnqd()) { | ||||
|                 inventory.setType("合同内清单"); | ||||
|                 inventory.setType("2"); | ||||
|                 inventory.setCode(IdUtil.getSnowflakeNextIdStr()); | ||||
|                 inventory.setPrimaryMeterId(add.getId()); | ||||
|             } | ||||
| @ -209,7 +209,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|         if(bo.getHtwqd() != null && !bo.getHtwqd().isEmpty()){ | ||||
|             for (XzdContractInventory xzdContractOutsideInventory : bo.getHtwqd()) { | ||||
|                 xzdContractOutsideInventory.setPrimaryMeterId(add.getId()); | ||||
|                 xzdContractOutsideInventory.setType("合同外清单"); | ||||
|                 xzdContractOutsideInventory.setType("1"); | ||||
|                 xzdContractOutsideInventory.setCode(IdUtil.getSnowflakeNextIdStr()); | ||||
|             } | ||||
|             xzdContractInventoryService.saveBatch(bo.getHtwqd()); | ||||
| @ -222,6 +222,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|                 items.setTableName("xzd_contract_progress_settlement"); | ||||
|                 items.setDetailType(1L); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-奖励 | ||||
| @ -231,6 +232,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|                 items.setTableName("xzd_contract_progress_settlement"); | ||||
|                 items.setDetailType(2L); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         } | ||||
|  | ||||
|         return flag; | ||||
| @ -290,7 +292,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             } | ||||
|             for (XzdContractInventory businessChange : bo.getHtnqd()) { | ||||
|                 businessChange.setPrimaryMeterId(update.getId()); | ||||
|                 businessChange.setType("合同内清单"); | ||||
|                 businessChange.setType("2"); | ||||
|             } | ||||
|             xzdContractInventoryService.saveBatch(bo.getHtnqd()); | ||||
|         }else { | ||||
| @ -307,6 +309,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             for (XzdAlterationInventory businessChange : bo.getBgzjqd()) { | ||||
|                 businessChange.setPrimaryMeterId(update.getId()); | ||||
|             } | ||||
|             xzdAlterationInventoryService.saveBatch(bo.getBgzjqd()); | ||||
|         }else { | ||||
|             if (old.getBgzjqd() != null && !old.getBgzjqd().isEmpty()){ | ||||
|                 xzdAlterationInventoryService.removeByIds(old.getBgzjqd()); | ||||
| @ -320,7 +323,12 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             } | ||||
|             for (XzdContractInventory xzdContractOutsideInventory : bo.getHtwqd()) { | ||||
|                 xzdContractOutsideInventory.setPrimaryMeterId(update.getId()); | ||||
|                 xzdContractOutsideInventory.setType("合同外清单"); | ||||
|                 xzdContractOutsideInventory.setType("1"); | ||||
|             } | ||||
|             xzdContractInventoryService.saveBatch(bo.getHtwqd()); | ||||
|         }else { | ||||
|             if (old.getHtwqd() != null && !old.getHtwqd().isEmpty()){ | ||||
|                 xzdContractInventoryService.removeByIds(old.getHtwqd()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
| @ -334,6 +342,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|                 items.setTableName("xzd_contract_progress_settlement"); | ||||
|                 items.setDetailType(1L); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         }else { | ||||
|             if (old.getKk() != null && !old.getKk().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getKk()); | ||||
| @ -350,6 +359,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|                 items.setDetailType(2L); | ||||
|                 items.setTableName("xzd_contract_progress_settlement"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         }else { | ||||
|             if (old.getJl() != null && !old.getJl().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getJl()); | ||||
| @ -394,7 +404,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|  | ||||
|             LambdaQueryWrapper<XzdContractInventory> lqw1 = new LambdaQueryWrapper<>(); | ||||
|             lqw1.eq(XzdContractInventory::getPrimaryMeterId, id); | ||||
|             lqw1.eq(XzdContractInventory::getType, "合同内清单"); | ||||
|             lqw1.eq(XzdContractInventory::getType, "2"); | ||||
|             xzdContractInventoryService.remove(lqw1); | ||||
|  | ||||
|             LambdaQueryWrapper<XzdAlterationInventory> lqw2 = new LambdaQueryWrapper<>(); | ||||
| @ -404,7 +414,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             //合同外清单 | ||||
|             LambdaQueryWrapper<XzdContractInventory> lqw3 = new LambdaQueryWrapper<>(); | ||||
|             lqw3.eq(XzdContractInventory::getPrimaryMeterId, id); | ||||
|             lqw3.eq(XzdContractInventory::getType, "合同外清单"); | ||||
|             lqw3.eq(XzdContractInventory::getType, "1"); | ||||
|             xzdContractInventoryService.remove(lqw3); | ||||
|  | ||||
|             //奖励与扣款-扣款 | ||||
| @ -496,7 +506,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             //合同内清单 | ||||
|             LambdaQueryWrapper<XzdContractInventory> queryWrapper1 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper1.eq(XzdContractInventory::getPrimaryMeterId, vo.getId()); | ||||
|             queryWrapper1.eq(XzdContractInventory::getType, "合同内清单"); | ||||
|             queryWrapper1.eq(XzdContractInventory::getType, "2"); | ||||
|             List<XzdContractInventory> list1 = xzdContractInventoryService.list(queryWrapper1); | ||||
|             if (list1 != null){ | ||||
|                 vo.setHtnqd(list1); | ||||
| @ -511,7 +521,7 @@ public class XzdContractProgressSettlementServiceImpl extends ServiceImpl<XzdCon | ||||
|             //合同外清单 | ||||
|             LambdaQueryWrapper<XzdContractInventory> queryWrapper3 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper3.eq(XzdContractInventory::getPrimaryMeterId, vo.getId()); | ||||
|             queryWrapper3.eq(XzdContractInventory::getType, "合同外清单"); | ||||
|             queryWrapper3.eq(XzdContractInventory::getType, "1"); | ||||
|             List<XzdContractInventory> list3 = xzdContractInventoryService.list(queryWrapper3); | ||||
|             if (list3 != null){ | ||||
|                 vo.setHtwqd(list3); | ||||
|  | ||||
| @ -93,7 +93,7 @@ public class XzdJsqdTzServiceImpl extends ServiceImpl<XzdJsqdTzMapper, XzdJsqdTz | ||||
|         lqw.eq(bo.getTzhse() != null, XzdJsqdTz::getTzhse, bo.getTzhse()); | ||||
|         lqw.eq(bo.getTzhjsse() != null, XzdJsqdTz::getTzhjsse, bo.getTzhjsse()); | ||||
|         lqw.eq(StringUtils.isNotBlank(bo.getYwbs()), XzdJsqdTz::getYwbs, bo.getYwbs()); | ||||
|         lqw.eq(StringUtils.isNotBlank(bo.getWbs()), XzdJsqdTz::getWbs, bo.getWbs()); | ||||
|         lqw.eq(StringUtils.isNotBlank(bo.getTzhwbs()), XzdJsqdTz::getTzhwbs, bo.getTzhwbs()); | ||||
|         lqw.eq(StringUtils.isNotBlank(bo.getSjly()), XzdJsqdTz::getSjly, bo.getSjly()); | ||||
|         lqw.eq(bo.getSszj() != null, XzdJsqdTz::getSszj, bo.getSszj()); | ||||
|         lqw.eq(bo.getSdzj() != null, XzdJsqdTz::getSdzj, bo.getSdzj()); | ||||
|  | ||||
| @ -16,6 +16,8 @@ import org.dromara.xzd.domain.*; | ||||
| import org.dromara.xzd.domain.vo.XzdContractAccountVo; | ||||
| import org.dromara.xzd.domain.vo.XzdContractDetailsVo; | ||||
| import org.dromara.xzd.domain.vo.XzdProjectVo; | ||||
| import org.dromara.xzd.settlement.domain.XzdJsDeductionItems; | ||||
| import org.dromara.xzd.settlement.service.impl.XzdJsDeductionItemsServiceImpl; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.dromara.xzd.domain.bo.XzdWorkcontractCompletionAdjustBo; | ||||
| @ -47,6 +49,10 @@ public class XzdWorkcontractCompletionAdjustServiceImpl extends ServiceImpl<XzdW | ||||
|     private XzdContractDetailsServiceImpl xzdContractDetailsService; | ||||
|     @Autowired | ||||
|     private XzdProjectServiceImpl xzdProjectService; | ||||
|     @Autowired | ||||
|     private XzdJsDeductionItemsServiceImpl xzdJsDeductionItemsService; | ||||
|     @Autowired | ||||
|     private XzdJsqdTzServiceImpl xzdJsqdTzService; | ||||
|  | ||||
|     /** | ||||
|      * 查询承包合同竣工结算调整 | ||||
| @ -129,6 +135,35 @@ public class XzdWorkcontractCompletionAdjustServiceImpl extends ServiceImpl<XzdW | ||||
|         if (flag) { | ||||
|             bo.setId(add.getId()); | ||||
|         } | ||||
|  | ||||
|         //决算清单调整 | ||||
|         if (bo.getJsqdTz() != null && !bo.getJsqdTz().isEmpty()){ | ||||
|             for (XzdJsqdTz jsqdTz : bo.getJsqdTz()) { | ||||
|                 jsqdTz.setMainId(add.getId()); | ||||
|                 jsqdTz.setType("2"); | ||||
|                 jsqdTz.setBm(BatchNumberGenerator.generateBatchNumber("JSQD-")); | ||||
|             } | ||||
|             xzdJsqdTzService.saveBatch(bo.getJsqdTz()); | ||||
|         } | ||||
|         //奖励与扣款-奖励 | ||||
|         if (bo.getJl() != null && !bo.getJl().isEmpty()){ | ||||
|             for (XzdJsDeductionItems jl : bo.getJl()) { | ||||
|                 jl.setMainDocId(add.getId()); | ||||
|                 jl.setDetailType(2L); | ||||
|                 jl.setTableName("xzd_workcontract_completion_adjust"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         } | ||||
|         //奖励与扣款-扣款 | ||||
|         if (bo.getKk() != null && !bo.getKk().isEmpty()){ | ||||
|             for (XzdJsDeductionItems kk : bo.getKk()) { | ||||
|                 kk.setMainDocId(add.getId()); | ||||
|                 kk.setDetailType(1L); | ||||
|                 kk.setTableName("xzd_workcontract_completion_adjust"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         } | ||||
|  | ||||
|         return flag; | ||||
|     } | ||||
|  | ||||
| @ -163,6 +198,48 @@ public class XzdWorkcontractCompletionAdjustServiceImpl extends ServiceImpl<XzdW | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //决算清单 | ||||
|         if (bo.getJsqdTz() != null && !bo.getJsqdTz().isEmpty()){ | ||||
|             if (old.getJsqdTz() != null && !old.getJsqdTz().isEmpty()){ | ||||
|                 xzdJsqdTzService.removeByIds(old.getJsqdTz()); | ||||
|             } | ||||
|             for (XzdJsqdTz businessChange : bo.getJsqdTz()) { | ||||
|                 businessChange.setMainId(update.getId()); | ||||
|                 businessChange.setType("2"); | ||||
|             } | ||||
|             xzdJsqdTzService.saveBatch(bo.getJsqdTz()); | ||||
|         }else { | ||||
|             if (old.getJsqdTz() != null && !old.getJsqdTz().isEmpty()){ | ||||
|                 xzdJsqdTzService.removeByIds(old.getJsqdTz()); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-奖励 | ||||
|         if (bo.getJl() != null && !bo.getJl().isEmpty()){ | ||||
|             if (old.getJl() != null && !old.getJl().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getJl()); | ||||
|             } | ||||
|             for (XzdJsDeductionItems jl : bo.getJl()) { | ||||
|                 jl.setMainDocId(update.getId()); | ||||
|                 jl.setDetailType(2L); | ||||
|                 jl.setTableName("xzd_workcontract_completion_adjust"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getJl()); | ||||
|         } | ||||
|  | ||||
|         //奖励与扣款-扣款 | ||||
|         if (bo.getKk() != null && !bo.getKk().isEmpty()){ | ||||
|             if (old.getKk() != null && !old.getKk().isEmpty()){ | ||||
|                 xzdJsDeductionItemsService.removeByIds(old.getKk()); | ||||
|             } | ||||
|             for (XzdJsDeductionItems kk : bo.getKk()) { | ||||
|                 kk.setMainDocId(update.getId()); | ||||
|                 kk.setDetailType(1L); | ||||
|                 kk.setTableName("xzd_workcontract_completion_adjust"); | ||||
|             } | ||||
|             xzdJsDeductionItemsService.saveBatch(bo.getKk()); | ||||
|         } | ||||
|  | ||||
|         return baseMapper.updateById(update) > 0; | ||||
|     } | ||||
|  | ||||
| @ -195,6 +272,23 @@ public class XzdWorkcontractCompletionAdjustServiceImpl extends ServiceImpl<XzdW | ||||
|                         sysOssService.deleteWithValidByIds(deleteIds, false); | ||||
|                     } | ||||
|                 } | ||||
|                 //删除结算清单 | ||||
|                 LambdaQueryWrapper<XzdJsqdTz> queryWrapper = new LambdaQueryWrapper<>(); | ||||
|                 queryWrapper.eq(XzdJsqdTz::getMainId, id); | ||||
|                 queryWrapper.eq(XzdJsqdTz::getType, "2"); | ||||
|                 xzdJsqdTzService.remove(queryWrapper); | ||||
|                 //删除奖励与扣款-奖励 | ||||
|                 LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper1 = new LambdaQueryWrapper<>(); | ||||
|                 queryWrapper1.eq(XzdJsDeductionItems::getMainDocId, id); | ||||
|                 queryWrapper1.eq(XzdJsDeductionItems::getDetailType, 2L); | ||||
|                 queryWrapper1.eq(XzdJsDeductionItems::getTableName, "xzd_workcontract_completion_adjust"); | ||||
|                 xzdJsDeductionItemsService.remove(queryWrapper1); | ||||
|                 //删除奖励与扣款-扣款 | ||||
|                 LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper2 = new LambdaQueryWrapper<>(); | ||||
|                 queryWrapper2.eq(XzdJsDeductionItems::getMainDocId, id); | ||||
|                 queryWrapper2.eq(XzdJsDeductionItems::getDetailType, 1L); | ||||
|                 queryWrapper2.eq(XzdJsDeductionItems::getTableName, "xzd_workcontract_completion_adjust"); | ||||
|                 xzdJsDeductionItemsService.remove(queryWrapper2); | ||||
|             } | ||||
|         } | ||||
|         return baseMapper.deleteByIds(ids) > 0; | ||||
| @ -233,6 +327,32 @@ public class XzdWorkcontractCompletionAdjustServiceImpl extends ServiceImpl<XzdW | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|             //决算清单 | ||||
|             LambdaQueryWrapper<XzdJsqdTz> queryWrapper = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper.eq(XzdJsqdTz::getMainId, vo.getId()); | ||||
|             queryWrapper.eq(XzdJsqdTz::getType, "2"); | ||||
|             List<XzdJsqdTz> jsqdTzs = xzdJsqdTzService.list(queryWrapper); | ||||
|             if (jsqdTzs != null && !jsqdTzs.isEmpty()){ | ||||
|                 vo.setJsqdTz(jsqdTzs); | ||||
|             } | ||||
|             //奖励与扣款-奖励 | ||||
|             LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper1 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getMainDocId, vo.getId()); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getDetailType, 2L); | ||||
|             queryWrapper1.eq(XzdJsDeductionItems::getTableName, "xzd_workcontract_completion_adjust"); | ||||
|             List<XzdJsDeductionItems> jl = xzdJsDeductionItemsService.list(queryWrapper1); | ||||
|             if (jl != null && !jl.isEmpty()){ | ||||
|                 vo.setJl(jl); | ||||
|             } | ||||
|             //奖励与扣款-扣款 | ||||
|             LambdaQueryWrapper<XzdJsDeductionItems> queryWrapper2 = new LambdaQueryWrapper<>(); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getMainDocId, vo.getId()); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getDetailType, 1L); | ||||
|             queryWrapper2.eq(XzdJsDeductionItems::getTableName, "xzd_workcontract_completion_adjust"); | ||||
|             List<XzdJsDeductionItems> kk = xzdJsDeductionItemsService.list(queryWrapper2); | ||||
|             if (kk != null && !kk.isEmpty()){ | ||||
|                 vo.setKk(kk); | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -0,0 +1,132 @@ | ||||
| package org.dromara.xzd.service.impl; | ||||
|  | ||||
| import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | ||||
| import org.dromara.common.core.utils.MapstructUtils; | ||||
| import org.dromara.common.mybatis.core.page.TableDataInfo; | ||||
| import org.dromara.common.mybatis.core.page.PageQuery; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.stereotype.Service; | ||||
| import org.dromara.xzd.domain.bo.XzdZbjghydBo; | ||||
| import org.dromara.xzd.domain.vo.XzdZbjghydVo; | ||||
| import org.dromara.xzd.domain.XzdZbjghyd; | ||||
| import org.dromara.xzd.mapper.XzdZbjghydMapper; | ||||
| import org.dromara.xzd.service.IXzdZbjghydService; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.Collection; | ||||
|  | ||||
| /** | ||||
|  * 质保金归还约定Service业务层处理 | ||||
|  * | ||||
|  * @author Lion Li | ||||
|  * @date 2025-10-20 | ||||
|  */ | ||||
| @RequiredArgsConstructor | ||||
| @Service | ||||
| public class XzdZbjghydServiceImpl extends ServiceImpl<XzdZbjghydMapper, XzdZbjghyd> implements IXzdZbjghydService { | ||||
|  | ||||
|     private final XzdZbjghydMapper baseMapper; | ||||
|  | ||||
|     /** | ||||
|      * 查询质保金归还约定 | ||||
|      * | ||||
|      * @param id 主键 | ||||
|      * @return 质保金归还约定 | ||||
|      */ | ||||
|     @Override | ||||
|     public XzdZbjghydVo queryById(Long id){ | ||||
|         return baseMapper.selectVoById(id); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 分页查询质保金归还约定列表 | ||||
|      * | ||||
|      * @param bo        查询条件 | ||||
|      * @param pageQuery 分页参数 | ||||
|      * @return 质保金归还约定分页列表 | ||||
|      */ | ||||
|     @Override | ||||
|     public TableDataInfo<XzdZbjghydVo> queryPageList(XzdZbjghydBo bo, PageQuery pageQuery) { | ||||
|         LambdaQueryWrapper<XzdZbjghyd> lqw = buildQueryWrapper(bo); | ||||
|         Page<XzdZbjghydVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw); | ||||
|         return TableDataInfo.build(result); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 查询符合条件的质保金归还约定列表 | ||||
|      * | ||||
|      * @param bo 查询条件 | ||||
|      * @return 质保金归还约定列表 | ||||
|      */ | ||||
|     @Override | ||||
|     public List<XzdZbjghydVo> queryList(XzdZbjghydBo bo) { | ||||
|         LambdaQueryWrapper<XzdZbjghyd> lqw = buildQueryWrapper(bo); | ||||
|         return baseMapper.selectVoList(lqw); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<XzdZbjghyd> buildQueryWrapper(XzdZbjghydBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<XzdZbjghyd> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.orderByDesc(XzdZbjghyd::getId); | ||||
|         lqw.eq(bo.getMainId() != null, XzdZbjghyd::getMainId, bo.getMainId()); | ||||
|         lqw.eq(bo.getZbq() != null, XzdZbjghyd::getZbq, bo.getZbq()); | ||||
|         lqw.eq(bo.getGhbl() != null, XzdZbjghyd::getGhbl, bo.getGhbl()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增质保金归还约定 | ||||
|      * | ||||
|      * @param bo 质保金归还约定 | ||||
|      * @return 是否新增成功 | ||||
|      */ | ||||
|     @Override | ||||
|     public Boolean insertByBo(XzdZbjghydBo bo) { | ||||
|         XzdZbjghyd add = MapstructUtils.convert(bo, XzdZbjghyd.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         boolean flag = baseMapper.insert(add) > 0; | ||||
|         if (flag) { | ||||
|             bo.setId(add.getId()); | ||||
|         } | ||||
|         return flag; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改质保金归还约定 | ||||
|      * | ||||
|      * @param bo 质保金归还约定 | ||||
|      * @return 是否修改成功 | ||||
|      */ | ||||
|     @Override | ||||
|     public Boolean updateByBo(XzdZbjghydBo bo) { | ||||
|         XzdZbjghyd update = MapstructUtils.convert(bo, XzdZbjghyd.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return baseMapper.updateById(update) > 0; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(XzdZbjghyd entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 校验并批量删除质保金归还约定信息 | ||||
|      * | ||||
|      * @param ids     待删除的主键集合 | ||||
|      * @param isValid 是否进行有效性校验 | ||||
|      * @return 是否删除成功 | ||||
|      */ | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return baseMapper.deleteByIds(ids) > 0; | ||||
|     } | ||||
| } | ||||
| @ -130,6 +130,11 @@ public class XzdAlterationInventory extends BaseEntity { | ||||
|      */ | ||||
|     private BigDecimal cumulativeSettlementAmount; | ||||
|  | ||||
|     /** | ||||
|      * 累计结算占合同比 | ||||
|      */ | ||||
|     private BigDecimal ljjszhtb; | ||||
|  | ||||
|     /** | ||||
|      * CBS | ||||
|      */ | ||||
|  | ||||
| @ -185,7 +185,9 @@ public class XzdContractInventory extends BaseEntity { | ||||
|      */ | ||||
|     private String auditStatus; | ||||
|  | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 数据来源 | ||||
|      */ | ||||
|     private String sjly; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -129,6 +129,11 @@ public class XzdAlterationInventoryBo extends BaseEntity { | ||||
|      */ | ||||
|     private BigDecimal cumulativeSettlementAmount; | ||||
|  | ||||
|     /** | ||||
|      * 累计结算占合同比 | ||||
|      */ | ||||
|     private BigDecimal ljjszhtb; | ||||
|  | ||||
|     /** | ||||
|      * CBS | ||||
|      */ | ||||
|  | ||||
| @ -184,6 +184,9 @@ public class XzdContractInventoryBo extends BaseEntity { | ||||
|      */ | ||||
|     private String auditStatus; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 数据来源 | ||||
|      */ | ||||
|     private String sjly; | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -154,6 +154,11 @@ public class XzdAlterationInventoryVo implements Serializable { | ||||
|     @ExcelProperty(value = "累计结算金额") | ||||
|     private BigDecimal cumulativeSettlementAmount; | ||||
|  | ||||
|     /** | ||||
|      * 累计结算占合同比 | ||||
|      */ | ||||
|     private BigDecimal ljjszhtb; | ||||
|  | ||||
|     /** | ||||
|      * CBS | ||||
|      */ | ||||
|  | ||||
| @ -224,6 +224,9 @@ public class XzdContractInventoryVo implements Serializable { | ||||
|     @ExcelProperty(value = "审核状态") | ||||
|     private String auditStatus; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 数据来源 | ||||
|      */ | ||||
|     private String sjly; | ||||
|  | ||||
| } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user