Compare commits
5 Commits
09cbb6a8c5
...
549fbe92de
| Author | SHA1 | Date | |
|---|---|---|---|
| 549fbe92de | |||
| 270071a5f3 | |||
| f7b9d2f431 | |||
| 742df7279b | |||
| d033b505e2 |
@ -0,0 +1,105 @@
|
||||
package org.dromara.xzd.controller;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.dromara.common.idempotent.annotation.RepeatSubmit;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
|
||||
import org.dromara.xzd.domain.bo.XzdContractDetailsBo;
|
||||
import org.dromara.xzd.service.IXzdContractDetailsService;
|
||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 承包合同信息
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/xzd/contractDetails")
|
||||
public class XzdContractDetailsController extends BaseController {
|
||||
|
||||
private final IXzdContractDetailsService xzdContractDetailsService;
|
||||
|
||||
/**
|
||||
* 查询承包合同信息列表
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<XzdContractDetailsVo> list(XzdContractDetailsBo bo, PageQuery pageQuery) {
|
||||
return xzdContractDetailsService.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出承包合同信息列表
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:export")
|
||||
@Log(title = "承包合同信息", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
public void export(XzdContractDetailsBo bo, HttpServletResponse response) {
|
||||
List<XzdContractDetailsVo> list = xzdContractDetailsService.queryList(bo);
|
||||
ExcelUtil.exportExcel(list, "承包合同信息", XzdContractDetailsVo.class, response);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取承包合同信息详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<XzdContractDetailsVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(xzdContractDetailsService.queryById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增承包合同信息
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:add")
|
||||
@Log(title = "承包合同信息", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdContractDetailsBo bo) {
|
||||
return toAjax(xzdContractDetailsService.insertByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改承包合同信息
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:edit")
|
||||
@Log(title = "承包合同信息", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdContractDetailsBo bo) {
|
||||
return toAjax(xzdContractDetailsService.updateByBo(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除承包合同信息
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("xzd:contractDetails:remove")
|
||||
@Log(title = "承包合同信息", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(xzdContractDetailsService.deleteWithValidByIds(List.of(ids), true));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
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_business_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_business_seal")
|
||||
public class XzdBusinessSeal extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 印章编号
|
||||
*/
|
||||
private String yzNum;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
private String yzName;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,92 @@
|
||||
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;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 合同条款-预收预付款项对象 xzd_contract_advance_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_contract_advance_info")
|
||||
public class XzdContractAdvanceInfo extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 款项属性
|
||||
*/
|
||||
private String itemAttribute;
|
||||
|
||||
/**
|
||||
* 变更款项属性
|
||||
*/
|
||||
private String changeItemAttribute;
|
||||
|
||||
/**
|
||||
* 合同预收款金额
|
||||
*/
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 变更合同预收款金额
|
||||
*/
|
||||
private Long changeContractAmount;
|
||||
|
||||
/**
|
||||
* 预收百分比
|
||||
*/
|
||||
private BigDecimal advancePercentage;
|
||||
|
||||
/**
|
||||
* 变更预收百分比
|
||||
*/
|
||||
private Long changeAdvancePercentage;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,56 @@
|
||||
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_contract_clause
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_contract_clause")
|
||||
public class XzdContractClause extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 合同条款
|
||||
*/
|
||||
private String contractClause;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 变更内容
|
||||
*/
|
||||
private String changeContent;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,81 @@
|
||||
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_contract_deposit_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_contract_deposit_info")
|
||||
public class XzdContractDepositInfo extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 履约保证金形式(字典)
|
||||
*/
|
||||
private String performanceDepositForm;
|
||||
|
||||
/**
|
||||
* 履约保证金比例(%)
|
||||
*/
|
||||
private Long performanceDepositRatio;
|
||||
|
||||
/**
|
||||
* 履约保证金金额(元)
|
||||
*/
|
||||
private Long performanceDepositAmount;
|
||||
|
||||
/**
|
||||
* 是否有预收款(1有 2无)
|
||||
*/
|
||||
private String hasAdvancePayment;
|
||||
|
||||
/**
|
||||
* 预收款比例(%)
|
||||
*/
|
||||
private Long advancePaymentRatio;
|
||||
|
||||
/**
|
||||
* 预收款金额(元)
|
||||
*/
|
||||
private Long advancePaymentAmount;
|
||||
|
||||
/**
|
||||
* 质量保证金形式(字典,不为无还有子数据)
|
||||
*/
|
||||
private String qualityDepositForm;
|
||||
|
||||
/**
|
||||
* 质量保证金比例(%)
|
||||
*/
|
||||
private Long qualityDepositRatio;
|
||||
|
||||
/**
|
||||
* 质量保证金金额(元)
|
||||
*/
|
||||
private Long qualityDepositAmount;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,224 @@
|
||||
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.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 承包合同信息对象 xzd_contract_details
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_contract_details")
|
||||
public class XzdContractDetails extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 合同类型|模式(字典)
|
||||
*/
|
||||
private String contractType;
|
||||
|
||||
/**
|
||||
* 合同编码
|
||||
*/
|
||||
private String contractCode;
|
||||
|
||||
/**
|
||||
* 合同名称
|
||||
*/
|
||||
private String contractName;
|
||||
|
||||
/**
|
||||
* 单据日期
|
||||
*/
|
||||
private Date documentDate;
|
||||
|
||||
/**
|
||||
* 项目
|
||||
*/
|
||||
private Long project;
|
||||
|
||||
/**
|
||||
* 签订日期
|
||||
*/
|
||||
private Date signingDate;
|
||||
|
||||
/**
|
||||
* 客户性质(字典)
|
||||
*/
|
||||
private String customerNature;
|
||||
|
||||
/**
|
||||
* 甲方单位
|
||||
*/
|
||||
private Long partyAUnit;
|
||||
|
||||
/**
|
||||
* 乙方单位
|
||||
*/
|
||||
private Long partyBUnit;
|
||||
|
||||
/**
|
||||
* 合同金额
|
||||
*/
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 开票单位
|
||||
*/
|
||||
private Long invoicingUnit;
|
||||
|
||||
/**
|
||||
* 总投资额
|
||||
*/
|
||||
private Long totalInvestment;
|
||||
|
||||
/**
|
||||
* 预算分类
|
||||
*/
|
||||
private Long budgetClassification;
|
||||
|
||||
/**
|
||||
* 收票单位
|
||||
*/
|
||||
private Long ticketReceivingUnit;
|
||||
|
||||
/**
|
||||
* 归档日期
|
||||
*/
|
||||
private Date filingDate;
|
||||
|
||||
/**
|
||||
* 支付方式(字典)
|
||||
*/
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 支付条款
|
||||
*/
|
||||
private String paymentTerms;
|
||||
|
||||
/**
|
||||
* 工程规模
|
||||
*/
|
||||
private String projectScale;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
private Long sealName;
|
||||
|
||||
/**
|
||||
* 大写合同含税合计
|
||||
*/
|
||||
private String capitalizedTaxInclusiveTotal;
|
||||
|
||||
/**
|
||||
* 签约组织
|
||||
*/
|
||||
private Long signingOrganization;
|
||||
|
||||
/**
|
||||
* 项目类型
|
||||
*/
|
||||
private String projectType;
|
||||
|
||||
/**
|
||||
* 项目大类
|
||||
*/
|
||||
private String projectCategory;
|
||||
|
||||
/**
|
||||
* 是否审批后发起印章申请
|
||||
*/
|
||||
private Long isStampApplicationAfterApproval;
|
||||
|
||||
/**
|
||||
* 项目责任人
|
||||
*/
|
||||
private Long projectResponsiblePerson;
|
||||
|
||||
/**
|
||||
* 是否需备案
|
||||
*/
|
||||
private Long isNeedFiling;
|
||||
|
||||
/**
|
||||
* 备案状态(字典)
|
||||
*/
|
||||
private String filingStatus;
|
||||
|
||||
/**
|
||||
* 备案时间
|
||||
*/
|
||||
private Date filingTime;
|
||||
|
||||
/**
|
||||
* 是否固定单价合同
|
||||
*/
|
||||
private Long isFixedUnitPriceContract;
|
||||
|
||||
/**
|
||||
* 是否总价包干合同
|
||||
*/
|
||||
private Long isLumpSumContract;
|
||||
|
||||
/**
|
||||
* 是否实时刷新
|
||||
*/
|
||||
private Long isRealTimeRefresh;
|
||||
|
||||
/**
|
||||
* 原合同金额
|
||||
*/
|
||||
private BigDecimal originalContractAmount;
|
||||
|
||||
/**
|
||||
* 合同含税金额
|
||||
*/
|
||||
private BigDecimal contractTaxInclusiveAmount;
|
||||
|
||||
/**
|
||||
* 累计结算金额
|
||||
*/
|
||||
private BigDecimal cumulativeSettlementAmount;
|
||||
|
||||
/**
|
||||
* 单据ID(单据引用)
|
||||
*/
|
||||
private Long danjuId;
|
||||
|
||||
/**
|
||||
* 文件ID(多个文件逗号分隔)
|
||||
*/
|
||||
private String fileId;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,112 @@
|
||||
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.util.Date;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 合同条款-扣款与奖励项对象 xzd_deduction_items
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_deduction_items")
|
||||
public class XzdDeductionItems extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 扣款项目名称
|
||||
*/
|
||||
private String deductionProjectName;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 扣款类型
|
||||
*/
|
||||
private String deductionType;
|
||||
|
||||
/**
|
||||
* 变更扣款类型
|
||||
*/
|
||||
private String changeDeductionType;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 变更公式
|
||||
*/
|
||||
private String changeFormula;
|
||||
|
||||
/**
|
||||
* 扣款属性
|
||||
*/
|
||||
private String deductionAttribute;
|
||||
|
||||
/**
|
||||
* 变更扣款属性
|
||||
*/
|
||||
private String changeDeductionAttribute;
|
||||
|
||||
/**
|
||||
* 归还时间
|
||||
*/
|
||||
private Date returnTime;
|
||||
|
||||
/**
|
||||
* 变更归还时间
|
||||
*/
|
||||
private Date changeReturnTime;
|
||||
|
||||
/**
|
||||
* 申请扣除(0:否,1:是)
|
||||
*/
|
||||
private Long applyDeduction;
|
||||
|
||||
/**
|
||||
* 变更申请扣除(0:否,1:是)
|
||||
*/
|
||||
private Long changeApplyDeduction;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -79,7 +79,7 @@ public class XzdProject extends BaseEntity {
|
||||
/**
|
||||
* 管理组织
|
||||
*/
|
||||
private String managementOrganization;
|
||||
private Long managementOrganization;
|
||||
|
||||
/**
|
||||
* 项目金额
|
||||
@ -119,7 +119,7 @@ public class XzdProject extends BaseEntity {
|
||||
/**
|
||||
* 默认财务组织
|
||||
*/
|
||||
private String defaultFinancialOrganization;
|
||||
private Long defaultFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 承包方式
|
||||
@ -129,7 +129,7 @@ public class XzdProject extends BaseEntity {
|
||||
/**
|
||||
* 涉及财务组织
|
||||
*/
|
||||
private String involvedFinancialOrganization;
|
||||
private Long involvedFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 经营模式
|
||||
@ -179,7 +179,7 @@ public class XzdProject extends BaseEntity {
|
||||
/**
|
||||
* 共享组织
|
||||
*/
|
||||
private String sharingOrganization;
|
||||
private Long sharingOrganization;
|
||||
|
||||
/**
|
||||
* 目标中标金额
|
||||
|
||||
@ -0,0 +1,91 @@
|
||||
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_settlement_rules
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("xzd_settlement_rules")
|
||||
public class XzdSettlementRules extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 类型(1结算 2决算 3预收款)
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 结算周期(1施工节点 2月)
|
||||
*/
|
||||
private String settlementCycle;
|
||||
|
||||
/**
|
||||
* 结算账龄(天)
|
||||
*/
|
||||
private Long settlementAging;
|
||||
|
||||
/**
|
||||
* 里程碑节点
|
||||
*/
|
||||
private String milestoneNode;
|
||||
|
||||
/**
|
||||
* 选择值(1合同金额 2本期结算金额 3累计结算金额 4累计结算百分比)
|
||||
*/
|
||||
private String selectValue;
|
||||
|
||||
/**
|
||||
* 比较符
|
||||
*/
|
||||
private String comparisonSymbol;
|
||||
|
||||
/**
|
||||
* 比较值
|
||||
*/
|
||||
private String comparisonValue;
|
||||
|
||||
/**
|
||||
* 收款账龄(天)
|
||||
*/
|
||||
private Long collectionAging;
|
||||
|
||||
/**
|
||||
* 收款基数(1合同金额 2本期结算金额)
|
||||
*/
|
||||
private Long collectionBase;
|
||||
|
||||
/**
|
||||
* 收款比例(%)
|
||||
*/
|
||||
private Long collectionRatio;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,36 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdBusinessSeal;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 印章帮助业务对象 xzd_business_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdBusinessSeal.class, reverseConvertGenerate = false)
|
||||
public class XzdBusinessSealBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 印章编号
|
||||
*/
|
||||
private String yzNum;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
private String yzName;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,93 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractAdvanceInfo;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 合同条款-预收预付款项业务对象 xzd_contract_advance_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdContractAdvanceInfo.class, reverseConvertGenerate = false)
|
||||
public class XzdContractAdvanceInfoBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@NotBlank(message = "表名不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@NotNull(message = "承包合同信息ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 款项属性
|
||||
*/
|
||||
private String itemAttribute;
|
||||
|
||||
/**
|
||||
* 变更款项属性
|
||||
*/
|
||||
private String changeItemAttribute;
|
||||
|
||||
/**
|
||||
* 合同预收款金额
|
||||
*/
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 变更合同预收款金额
|
||||
*/
|
||||
private Long changeContractAmount;
|
||||
|
||||
/**
|
||||
* 预收百分比
|
||||
*/
|
||||
private Long advancePercentage;
|
||||
|
||||
/**
|
||||
* 变更预收百分比
|
||||
*/
|
||||
private BigDecimal changeAdvancePercentage;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,56 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractClause;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 合同条款-合同条款业务对象 xzd_contract_clause
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdContractClause.class, reverseConvertGenerate = false)
|
||||
public class XzdContractClauseBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@NotBlank(message = "表名不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@NotNull(message = "承包合同信息ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 合同条款
|
||||
*/
|
||||
private String contractClause;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 变更内容
|
||||
*/
|
||||
private String changeContent;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,80 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractDepositInfo;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 合同主要条款约定业务对象 xzd_contract_deposit_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdContractDepositInfo.class, reverseConvertGenerate = false)
|
||||
public class XzdContractDepositInfoBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@NotNull(message = "承包合同信息ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 履约保证金形式(字典)
|
||||
*/
|
||||
private String performanceDepositForm;
|
||||
|
||||
/**
|
||||
* 履约保证金比例(%)
|
||||
*/
|
||||
private Long performanceDepositRatio;
|
||||
|
||||
/**
|
||||
* 履约保证金金额(元)
|
||||
*/
|
||||
private Long performanceDepositAmount;
|
||||
|
||||
/**
|
||||
* 是否有预收款(1有 2无)
|
||||
*/
|
||||
private String hasAdvancePayment;
|
||||
|
||||
/**
|
||||
* 预收款比例(%)
|
||||
*/
|
||||
private Long advancePaymentRatio;
|
||||
|
||||
/**
|
||||
* 预收款金额(元)
|
||||
*/
|
||||
private Long advancePaymentAmount;
|
||||
|
||||
/**
|
||||
* 质量保证金形式(字典,不为无还有子数据)
|
||||
*/
|
||||
private String qualityDepositForm;
|
||||
|
||||
/**
|
||||
* 质量保证金比例(%)
|
||||
*/
|
||||
private Long qualityDepositRatio;
|
||||
|
||||
/**
|
||||
* 质量保证金金额(元)
|
||||
*/
|
||||
private Long qualityDepositAmount;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,259 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.*;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 承包合同信息业务对象 xzd_contract_details
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdContractDetails.class, reverseConvertGenerate = false)
|
||||
public class XzdContractDetailsBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 合同类型|模式(字典)
|
||||
*/
|
||||
@NotBlank(message = "合同类型|模式(字典)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String contractType;
|
||||
|
||||
/**
|
||||
* 合同编码
|
||||
*/
|
||||
@NotBlank(message = "合同编码不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String contractCode;
|
||||
|
||||
/**
|
||||
* 合同名称
|
||||
*/
|
||||
@NotBlank(message = "合同名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String contractName;
|
||||
|
||||
/**
|
||||
* 单据日期
|
||||
*/
|
||||
@NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Date documentDate;
|
||||
|
||||
/**
|
||||
* 项目
|
||||
*/
|
||||
@NotNull(message = "项目不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long project;
|
||||
|
||||
/**
|
||||
* 签订日期
|
||||
*/
|
||||
private Date signingDate;
|
||||
|
||||
/**
|
||||
* 客户性质(字典)
|
||||
*/
|
||||
private String customerNature;
|
||||
|
||||
/**
|
||||
* 甲方单位
|
||||
*/
|
||||
@NotNull(message = "甲方单位不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long partyAUnit;
|
||||
|
||||
/**
|
||||
* 乙方单位
|
||||
*/
|
||||
@NotNull(message = "乙方单位不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long partyBUnit;
|
||||
|
||||
/**
|
||||
* 合同金额
|
||||
*/
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 开票单位
|
||||
*/
|
||||
@NotNull(message = "开票单位不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long invoicingUnit;
|
||||
|
||||
/**
|
||||
* 总投资额
|
||||
*/
|
||||
@NotNull(message = "总投资额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal totalInvestment;
|
||||
|
||||
/**
|
||||
* 预算分类
|
||||
*/
|
||||
private Long budgetClassification;
|
||||
|
||||
/**
|
||||
* 收票单位
|
||||
*/
|
||||
@NotNull(message = "收票单位不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long ticketReceivingUnit;
|
||||
|
||||
/**
|
||||
* 归档日期
|
||||
*/
|
||||
private Date filingDate;
|
||||
|
||||
/**
|
||||
* 支付方式(字典)
|
||||
*/
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 支付条款
|
||||
*/
|
||||
private String paymentTerms;
|
||||
|
||||
/**
|
||||
* 工程规模
|
||||
*/
|
||||
private String projectScale;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
@NotNull(message = "印章名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long sealName;
|
||||
|
||||
/**
|
||||
* 大写合同含税合计
|
||||
*/
|
||||
private String capitalizedTaxInclusiveTotal;
|
||||
|
||||
/**
|
||||
* 签约组织
|
||||
*/
|
||||
@NotNull(message = "签约组织不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long signingOrganization;
|
||||
|
||||
/**
|
||||
* 项目类型
|
||||
*/
|
||||
private String projectType;
|
||||
|
||||
/**
|
||||
* 项目大类
|
||||
*/
|
||||
private String projectCategory;
|
||||
|
||||
/**
|
||||
* 是否审批后发起印章申请
|
||||
*/
|
||||
private Long isStampApplicationAfterApproval;
|
||||
|
||||
/**
|
||||
* 项目责任人
|
||||
*/
|
||||
private Long projectResponsiblePerson;
|
||||
|
||||
/**
|
||||
* 是否需备案
|
||||
*/
|
||||
private Long isNeedFiling;
|
||||
|
||||
/**
|
||||
* 备案状态(字典)
|
||||
*/
|
||||
private String filingStatus;
|
||||
|
||||
/**
|
||||
* 备案时间
|
||||
*/
|
||||
private Date filingTime;
|
||||
|
||||
/**
|
||||
* 是否固定单价合同
|
||||
*/
|
||||
private Long isFixedUnitPriceContract;
|
||||
|
||||
/**
|
||||
* 是否总价包干合同
|
||||
*/
|
||||
private Long isLumpSumContract;
|
||||
|
||||
/**
|
||||
* 是否实时刷新
|
||||
*/
|
||||
private Long isRealTimeRefresh;
|
||||
|
||||
/**
|
||||
* 原合同金额
|
||||
*/
|
||||
private BigDecimal originalContractAmount;
|
||||
|
||||
/**
|
||||
* 合同含税金额
|
||||
*/
|
||||
private BigDecimal contractTaxInclusiveAmount;
|
||||
|
||||
/**
|
||||
* 累计结算金额
|
||||
*/
|
||||
private BigDecimal cumulativeSettlementAmount;
|
||||
|
||||
/**
|
||||
* 单据ID(单据引用)
|
||||
*/
|
||||
private Long danjuId;
|
||||
|
||||
/**
|
||||
* 文件ID(多个文件逗号分隔)
|
||||
*/
|
||||
private String fileId;
|
||||
|
||||
/**
|
||||
* 预收款项
|
||||
*/
|
||||
private List<XzdContractAdvanceInfo> yskx;
|
||||
|
||||
/**
|
||||
* 扣款与奖励项
|
||||
*/
|
||||
private List<XzdDeductionItems> kkyjlx;
|
||||
|
||||
/**
|
||||
* 合同条款
|
||||
*/
|
||||
private List<XzdContractClause> httk;
|
||||
|
||||
/**
|
||||
* 支付条款
|
||||
*/
|
||||
private List<XzdSettlementRules> zftk;
|
||||
|
||||
/**
|
||||
* 合同主要条款约定
|
||||
*/
|
||||
private List<XzdContractDepositInfo> htzytkyd;
|
||||
|
||||
}
|
||||
@ -0,0 +1,112 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdDeductionItems;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 合同条款-扣款与奖励项业务对象 xzd_deduction_items
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdDeductionItems.class, reverseConvertGenerate = false)
|
||||
public class XzdDeductionItemsBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@NotBlank(message = "表名不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@NotNull(message = "承包合同信息ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 扣款项目名称
|
||||
*/
|
||||
private String deductionProjectName;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 扣款类型
|
||||
*/
|
||||
private String deductionType;
|
||||
|
||||
/**
|
||||
* 变更扣款类型
|
||||
*/
|
||||
private String changeDeductionType;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 变更公式
|
||||
*/
|
||||
private String changeFormula;
|
||||
|
||||
/**
|
||||
* 扣款属性
|
||||
*/
|
||||
private String deductionAttribute;
|
||||
|
||||
/**
|
||||
* 变更扣款属性
|
||||
*/
|
||||
private String changeDeductionAttribute;
|
||||
|
||||
/**
|
||||
* 归还时间
|
||||
*/
|
||||
private Date returnTime;
|
||||
|
||||
/**
|
||||
* 变更归还时间
|
||||
*/
|
||||
private Date changeReturnTime;
|
||||
|
||||
/**
|
||||
* 申请扣除(0:否,1:是)
|
||||
*/
|
||||
private Long applyDeduction;
|
||||
|
||||
/**
|
||||
* 变更申请扣除(0:否,1:是)
|
||||
*/
|
||||
private Long changeApplyDeduction;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -92,7 +92,12 @@ public class XzdProjectBo extends BaseEntity {
|
||||
/**
|
||||
* 管理组织
|
||||
*/
|
||||
private String managementOrganization;
|
||||
private Long managementOrganization;
|
||||
|
||||
/**
|
||||
* 管理组织名
|
||||
*/
|
||||
private String managementOrganizationName;
|
||||
|
||||
/**
|
||||
* 项目金额
|
||||
@ -132,7 +137,12 @@ public class XzdProjectBo extends BaseEntity {
|
||||
/**
|
||||
* 默认财务组织
|
||||
*/
|
||||
private String defaultFinancialOrganization;
|
||||
private Long defaultFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 默认财务组织名
|
||||
*/
|
||||
private String defaultFinancialOrganizationName;
|
||||
|
||||
/**
|
||||
* 承包方式
|
||||
@ -142,7 +152,12 @@ public class XzdProjectBo extends BaseEntity {
|
||||
/**
|
||||
* 涉及财务组织
|
||||
*/
|
||||
private String involvedFinancialOrganization;
|
||||
private Long involvedFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 涉及财务组织名
|
||||
*/
|
||||
private String involvedFinancialOrganizationName;
|
||||
|
||||
/**
|
||||
* 经营模式
|
||||
@ -194,7 +209,12 @@ public class XzdProjectBo extends BaseEntity {
|
||||
/**
|
||||
* 共享组织
|
||||
*/
|
||||
private String sharingOrganization;
|
||||
private Long sharingOrganization;
|
||||
|
||||
/**
|
||||
* 共享组织名
|
||||
*/
|
||||
private String sharingOrganizationName;
|
||||
|
||||
/**
|
||||
* 目标中标金额
|
||||
|
||||
@ -0,0 +1,90 @@
|
||||
package org.dromara.xzd.domain.bo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||
import org.dromara.common.core.validate.AddGroup;
|
||||
import org.dromara.common.core.validate.EditGroup;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 支付条款业务对象 xzd_settlement_rules
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = XzdSettlementRules.class, reverseConvertGenerate = false)
|
||||
public class XzdSettlementRulesBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@NotNull(message = "承包合同信息ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 类型(1结算 2决算 3预收款)
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 结算周期(1施工节点 2月)
|
||||
*/
|
||||
private String settlementCycle;
|
||||
|
||||
/**
|
||||
* 结算账龄(天)
|
||||
*/
|
||||
private Long settlementAging;
|
||||
|
||||
/**
|
||||
* 里程碑节点
|
||||
*/
|
||||
private String milestoneNode;
|
||||
|
||||
/**
|
||||
* 选择值(1合同金额 2本期结算金额 3累计结算金额 4累计结算百分比)
|
||||
*/
|
||||
private String selectValue;
|
||||
|
||||
/**
|
||||
* 比较符
|
||||
*/
|
||||
private String comparisonSymbol;
|
||||
|
||||
/**
|
||||
* 比较值
|
||||
*/
|
||||
private String comparisonValue;
|
||||
|
||||
/**
|
||||
* 收款账龄(天)
|
||||
*/
|
||||
private Long collectionAging;
|
||||
|
||||
/**
|
||||
* 收款基数(1合同金额 2本期结算金额)
|
||||
*/
|
||||
private Long collectionBase;
|
||||
|
||||
/**
|
||||
* 收款比例(%)
|
||||
*/
|
||||
private Long collectionRatio;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,46 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdBusinessSeal;
|
||||
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_business_seal
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdBusinessSeal.class)
|
||||
public class XzdBusinessSealVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ExcelProperty(value = "主键ID")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 印章编号
|
||||
*/
|
||||
@ExcelProperty(value = "印章编号")
|
||||
private String yzNum;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
@ExcelProperty(value = "印章名称")
|
||||
private String yzName;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,107 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractAdvanceInfo;
|
||||
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;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
||||
/**
|
||||
* 合同条款-预收预付款项视图对象 xzd_contract_advance_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdContractAdvanceInfo.class)
|
||||
public class XzdContractAdvanceInfoVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@ExcelProperty(value = "表名")
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@ExcelProperty(value = "承包合同信息ID")
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@ExcelProperty(value = "名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
@ExcelProperty(value = "款项")
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
@ExcelProperty(value = "变更款项")
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 款项属性
|
||||
*/
|
||||
@ExcelProperty(value = "款项属性")
|
||||
private String itemAttribute;
|
||||
|
||||
/**
|
||||
* 变更款项属性
|
||||
*/
|
||||
@ExcelProperty(value = "变更款项属性")
|
||||
private String changeItemAttribute;
|
||||
|
||||
/**
|
||||
* 合同预收款金额
|
||||
*/
|
||||
@ExcelProperty(value = "合同预收款金额")
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 变更合同预收款金额
|
||||
*/
|
||||
@ExcelProperty(value = "变更合同预收款金额")
|
||||
private Long changeContractAmount;
|
||||
|
||||
/**
|
||||
* 预收百分比
|
||||
*/
|
||||
@ExcelProperty(value = "预收百分比")
|
||||
private Long advancePercentage;
|
||||
|
||||
/**
|
||||
* 变更预收百分比
|
||||
*/
|
||||
@ExcelProperty(value = "变更预收百分比")
|
||||
private BigDecimal changeAdvancePercentage;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -146,5 +146,7 @@ public class XzdContractAgreementVo implements Serializable {
|
||||
@ExcelDictFormat(readConverterExp = "多=个文件逗号分隔")
|
||||
private String fileId;
|
||||
|
||||
private Long createBy;
|
||||
private String createUser;
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,64 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractClause;
|
||||
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_contract_clause
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdContractClause.class)
|
||||
public class XzdContractClauseVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@ExcelProperty(value = "表名")
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@ExcelProperty(value = "承包合同信息ID")
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 合同条款
|
||||
*/
|
||||
@ExcelProperty(value = "合同条款")
|
||||
private String contractClause;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
@ExcelProperty(value = "内容")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 变更内容
|
||||
*/
|
||||
@ExcelProperty(value = "变更内容")
|
||||
private String changeContent;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,99 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractDepositInfo;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
/**
|
||||
* 合同主要条款约定视图对象 xzd_contract_deposit_info
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdContractDepositInfo.class)
|
||||
public class XzdContractDepositInfoVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@ExcelProperty(value = "承包合同信息ID")
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 履约保证金形式(字典)
|
||||
*/
|
||||
@ExcelProperty(value = "履约保证金形式", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典")
|
||||
private String performanceDepositForm;
|
||||
|
||||
/**
|
||||
* 履约保证金比例(%)
|
||||
*/
|
||||
@ExcelProperty(value = "履约保证金比例(%)")
|
||||
private Long performanceDepositRatio;
|
||||
|
||||
/**
|
||||
* 履约保证金金额(元)
|
||||
*/
|
||||
@ExcelProperty(value = "履约保证金金额(元)")
|
||||
private Long performanceDepositAmount;
|
||||
|
||||
/**
|
||||
* 是否有预收款(1有 2无)
|
||||
*/
|
||||
@ExcelProperty(value = "是否有预收款", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "1=有,2=无")
|
||||
private String hasAdvancePayment;
|
||||
|
||||
/**
|
||||
* 预收款比例(%)
|
||||
*/
|
||||
@ExcelProperty(value = "预收款比例(%)")
|
||||
private Long advancePaymentRatio;
|
||||
|
||||
/**
|
||||
* 预收款金额(元)
|
||||
*/
|
||||
@ExcelProperty(value = "预收款金额(元)")
|
||||
private Long advancePaymentAmount;
|
||||
|
||||
/**
|
||||
* 质量保证金形式(字典,不为无还有子数据)
|
||||
*/
|
||||
@ExcelProperty(value = "质量保证金形式", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典,不为无还有子数据")
|
||||
private String qualityDepositForm;
|
||||
|
||||
/**
|
||||
* 质量保证金比例(%)
|
||||
*/
|
||||
@ExcelProperty(value = "质量保证金比例(%)")
|
||||
private Long qualityDepositRatio;
|
||||
|
||||
/**
|
||||
* 质量保证金金额(元)
|
||||
*/
|
||||
@ExcelProperty(value = "质量保证金金额(元)")
|
||||
private Long qualityDepositAmount;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,338 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import org.dromara.xzd.domain.*;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 承包合同信息视图对象 xzd_contract_details
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdContractDetails.class)
|
||||
public class XzdContractDetailsVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 所属部门ID
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
private String deptName;
|
||||
|
||||
/**
|
||||
* 合同类型|模式(字典)
|
||||
*/
|
||||
@ExcelProperty(value = "合同类型|模式", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典")
|
||||
private String contractType;
|
||||
|
||||
/**
|
||||
* 合同编码
|
||||
*/
|
||||
@ExcelProperty(value = "合同编码")
|
||||
private String contractCode;
|
||||
|
||||
/**
|
||||
* 合同名称
|
||||
*/
|
||||
@ExcelProperty(value = "合同名称")
|
||||
private String contractName;
|
||||
|
||||
/**
|
||||
* 单据日期
|
||||
*/
|
||||
@ExcelProperty(value = "单据日期")
|
||||
private Date documentDate;
|
||||
|
||||
/**
|
||||
* 项目
|
||||
*/
|
||||
@ExcelProperty(value = "项目")
|
||||
private Long project;
|
||||
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
private String projectName;
|
||||
|
||||
/**
|
||||
* 签订日期
|
||||
*/
|
||||
@ExcelProperty(value = "签订日期")
|
||||
private Date signingDate;
|
||||
|
||||
/**
|
||||
* 客户性质(字典)
|
||||
*/
|
||||
@ExcelProperty(value = "客户性质", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典")
|
||||
private String customerNature;
|
||||
|
||||
/**
|
||||
* 甲方单位
|
||||
*/
|
||||
@ExcelProperty(value = "甲方单位")
|
||||
private Long partyAUnit;
|
||||
|
||||
/**
|
||||
* 甲方单位名称
|
||||
*/
|
||||
private String partyAUnitName;
|
||||
|
||||
/**
|
||||
* 乙方单位
|
||||
*/
|
||||
@ExcelProperty(value = "乙方单位")
|
||||
private Long partyBUnit;
|
||||
|
||||
/**
|
||||
* 乙方单位名称
|
||||
*/
|
||||
private String partyBUnitName;
|
||||
|
||||
/**
|
||||
* 合同金额
|
||||
*/
|
||||
@ExcelProperty(value = "合同金额")
|
||||
private BigDecimal contractAmount;
|
||||
|
||||
/**
|
||||
* 开票单位
|
||||
*/
|
||||
@ExcelProperty(value = "开票单位")
|
||||
private Long invoicingUnit;
|
||||
|
||||
/**
|
||||
* 开票单位名称
|
||||
*/
|
||||
private String invoicingUnitName;
|
||||
|
||||
/**
|
||||
* 总投资额
|
||||
*/
|
||||
@ExcelProperty(value = "总投资额")
|
||||
private BigDecimal totalInvestment;
|
||||
|
||||
/**
|
||||
* 预算分类
|
||||
*/
|
||||
@ExcelProperty(value = "预算分类")
|
||||
private Long budgetClassification;
|
||||
|
||||
/**
|
||||
* 收票单位
|
||||
*/
|
||||
@ExcelProperty(value = "收票单位")
|
||||
private Long ticketReceivingUnit;
|
||||
|
||||
/**
|
||||
* 收票单位名称
|
||||
*/
|
||||
private String ticketReceivingUnitName;
|
||||
|
||||
/**
|
||||
* 归档日期
|
||||
*/
|
||||
@ExcelProperty(value = "归档日期")
|
||||
private Date filingDate;
|
||||
|
||||
/**
|
||||
* 支付方式(字典)
|
||||
*/
|
||||
@ExcelProperty(value = "支付方式", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典")
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 支付条款
|
||||
*/
|
||||
@ExcelProperty(value = "支付条款")
|
||||
private String paymentTerms;
|
||||
|
||||
/**
|
||||
* 工程规模
|
||||
*/
|
||||
@ExcelProperty(value = "工程规模")
|
||||
private String projectScale;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remarks;
|
||||
|
||||
/**
|
||||
* 印章名称
|
||||
*/
|
||||
@ExcelProperty(value = "印章名称")
|
||||
private Long sealName;
|
||||
|
||||
/**
|
||||
* 印章名称详情
|
||||
*/
|
||||
private String sealNameDetail;
|
||||
|
||||
/**
|
||||
* 大写合同含税合计
|
||||
*/
|
||||
@ExcelProperty(value = "大写合同含税合计")
|
||||
private String capitalizedTaxInclusiveTotal;
|
||||
|
||||
/**
|
||||
* 签约组织
|
||||
*/
|
||||
@ExcelProperty(value = "签约组织")
|
||||
private Long signingOrganization;
|
||||
|
||||
/**
|
||||
* 签约组织名称
|
||||
*/
|
||||
private String signingOrganizationName;
|
||||
|
||||
/**
|
||||
* 项目类型
|
||||
*/
|
||||
@ExcelProperty(value = "项目类型")
|
||||
private String projectType;
|
||||
|
||||
/**
|
||||
* 项目大类
|
||||
*/
|
||||
@ExcelProperty(value = "项目大类")
|
||||
private String projectCategory;
|
||||
|
||||
/**
|
||||
* 是否审批后发起印章申请
|
||||
*/
|
||||
@ExcelProperty(value = "是否审批后发起印章申请")
|
||||
private Long isStampApplicationAfterApproval;
|
||||
|
||||
/**
|
||||
* 项目责任人
|
||||
*/
|
||||
@ExcelProperty(value = "项目责任人")
|
||||
private Long projectResponsiblePerson;
|
||||
|
||||
/**
|
||||
* 是否需备案
|
||||
*/
|
||||
@ExcelProperty(value = "是否需备案")
|
||||
private Long isNeedFiling;
|
||||
|
||||
/**
|
||||
* 备案状态(字典)
|
||||
*/
|
||||
@ExcelProperty(value = "备案状态", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "字=典")
|
||||
private String filingStatus;
|
||||
|
||||
/**
|
||||
* 备案时间
|
||||
*/
|
||||
@ExcelProperty(value = "备案时间")
|
||||
private Date filingTime;
|
||||
|
||||
/**
|
||||
* 是否固定单价合同
|
||||
*/
|
||||
@ExcelProperty(value = "是否固定单价合同")
|
||||
private Long isFixedUnitPriceContract;
|
||||
|
||||
/**
|
||||
* 是否总价包干合同
|
||||
*/
|
||||
@ExcelProperty(value = "是否总价包干合同")
|
||||
private Long isLumpSumContract;
|
||||
|
||||
/**
|
||||
* 是否实时刷新
|
||||
*/
|
||||
@ExcelProperty(value = "是否实时刷新")
|
||||
private Long isRealTimeRefresh;
|
||||
|
||||
/**
|
||||
* 原合同金额
|
||||
*/
|
||||
@ExcelProperty(value = "原合同金额")
|
||||
private BigDecimal originalContractAmount;
|
||||
|
||||
/**
|
||||
* 合同含税金额
|
||||
*/
|
||||
@ExcelProperty(value = "合同含税金额")
|
||||
private BigDecimal contractTaxInclusiveAmount;
|
||||
|
||||
/**
|
||||
* 累计结算金额
|
||||
*/
|
||||
@ExcelProperty(value = "累计结算金额")
|
||||
private BigDecimal cumulativeSettlementAmount;
|
||||
|
||||
/**
|
||||
* 单据ID(单据引用)
|
||||
*/
|
||||
@ExcelProperty(value = "单据ID", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "单=据引用")
|
||||
private Long danjuId;
|
||||
|
||||
/**
|
||||
* 文件ID(多个文件逗号分隔)
|
||||
*/
|
||||
@ExcelProperty(value = "文件ID", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "多=个文件逗号分隔")
|
||||
private String fileId;
|
||||
|
||||
/**
|
||||
* 预收款项
|
||||
*/
|
||||
private List<XzdContractAdvanceInfo> yskx;
|
||||
|
||||
/**
|
||||
* 扣款与奖励项
|
||||
*/
|
||||
private List<XzdDeductionItems> kkyjlx;
|
||||
|
||||
/**
|
||||
* 合同条款
|
||||
*/
|
||||
private List<XzdContractClause> httk;
|
||||
|
||||
/**
|
||||
* 支付条款
|
||||
*/
|
||||
private List<XzdSettlementRules> zftk;
|
||||
|
||||
/**
|
||||
* 合同主要条款约定
|
||||
*/
|
||||
private List<XzdContractDepositInfo> htzytqyd;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,136 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import org.dromara.xzd.domain.XzdDeductionItems;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
/**
|
||||
* 合同条款-扣款与奖励项视图对象 xzd_deduction_items
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdDeductionItems.class)
|
||||
public class XzdDeductionItemsVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
@ExcelProperty(value = "表名")
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@ExcelProperty(value = "承包合同信息ID")
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 扣款项目名称
|
||||
*/
|
||||
@ExcelProperty(value = "扣款项目名称")
|
||||
private String deductionProjectName;
|
||||
|
||||
/**
|
||||
* 款项
|
||||
*/
|
||||
@ExcelProperty(value = "款项")
|
||||
private String funds;
|
||||
|
||||
/**
|
||||
* 变更款项
|
||||
*/
|
||||
@ExcelProperty(value = "变更款项")
|
||||
private String changeFunds;
|
||||
|
||||
/**
|
||||
* 扣款类型
|
||||
*/
|
||||
@ExcelProperty(value = "扣款类型")
|
||||
private String deductionType;
|
||||
|
||||
/**
|
||||
* 变更扣款类型
|
||||
*/
|
||||
@ExcelProperty(value = "变更扣款类型")
|
||||
private String changeDeductionType;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
@ExcelProperty(value = "公式")
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 变更公式
|
||||
*/
|
||||
@ExcelProperty(value = "变更公式")
|
||||
private String changeFormula;
|
||||
|
||||
/**
|
||||
* 扣款属性
|
||||
*/
|
||||
@ExcelProperty(value = "扣款属性")
|
||||
private String deductionAttribute;
|
||||
|
||||
/**
|
||||
* 变更扣款属性
|
||||
*/
|
||||
@ExcelProperty(value = "变更扣款属性")
|
||||
private String changeDeductionAttribute;
|
||||
|
||||
/**
|
||||
* 归还时间
|
||||
*/
|
||||
@ExcelProperty(value = "归还时间")
|
||||
private Date returnTime;
|
||||
|
||||
/**
|
||||
* 变更归还时间
|
||||
*/
|
||||
@ExcelProperty(value = "变更归还时间")
|
||||
private Date changeReturnTime;
|
||||
|
||||
/**
|
||||
* 申请扣除(0:否,1:是)
|
||||
*/
|
||||
@ExcelProperty(value = "申请扣除", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "0=:否,1:是")
|
||||
private Long applyDeduction;
|
||||
|
||||
/**
|
||||
* 变更申请扣除(0:否,1:是)
|
||||
*/
|
||||
@ExcelProperty(value = "变更申请扣除", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "0=:否,1:是")
|
||||
private Long changeApplyDeduction;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -102,7 +102,12 @@ public class XzdProjectVo implements Serializable {
|
||||
* 管理组织
|
||||
*/
|
||||
@ExcelProperty(value = "管理组织")
|
||||
private String managementOrganization;
|
||||
private Long managementOrganization;
|
||||
|
||||
/**
|
||||
* 管理组织名
|
||||
*/
|
||||
private String managementOrganizationName;
|
||||
|
||||
/**
|
||||
* 项目金额
|
||||
@ -159,7 +164,12 @@ public class XzdProjectVo implements Serializable {
|
||||
* 默认财务组织
|
||||
*/
|
||||
@ExcelProperty(value = "默认财务组织")
|
||||
private String defaultFinancialOrganization;
|
||||
private Long defaultFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 默认财务组织名
|
||||
*/
|
||||
private String defaultFinancialOrganizationName;
|
||||
|
||||
/**
|
||||
* 承包方式
|
||||
@ -171,7 +181,12 @@ public class XzdProjectVo implements Serializable {
|
||||
* 涉及财务组织
|
||||
*/
|
||||
@ExcelProperty(value = "涉及财务组织")
|
||||
private String involvedFinancialOrganization;
|
||||
private Long involvedFinancialOrganization;
|
||||
|
||||
/**
|
||||
* 涉及财务组织名
|
||||
*/
|
||||
private String involvedFinancialOrganizationName;
|
||||
|
||||
/**
|
||||
* 经营模式
|
||||
@ -236,7 +251,12 @@ public class XzdProjectVo implements Serializable {
|
||||
* 共享组织
|
||||
*/
|
||||
@ExcelProperty(value = "共享组织")
|
||||
private String sharingOrganization;
|
||||
private Long sharingOrganization;
|
||||
|
||||
/**
|
||||
* 共享组织名
|
||||
*/
|
||||
private String sharingOrganizationName;
|
||||
|
||||
/**
|
||||
* 目标中标金额
|
||||
|
||||
@ -0,0 +1,111 @@
|
||||
package org.dromara.xzd.domain.vo;
|
||||
|
||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import org.dromara.common.excel.annotation.ExcelDictFormat;
|
||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
/**
|
||||
* 支付条款视图对象 xzd_settlement_rules
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = XzdSettlementRules.class)
|
||||
public class XzdSettlementRulesVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 承包合同信息ID
|
||||
*/
|
||||
@ExcelProperty(value = "承包合同信息ID")
|
||||
private Long contractDetailsId;
|
||||
|
||||
/**
|
||||
* 类型(1结算 2决算 3预收款)
|
||||
*/
|
||||
@ExcelProperty(value = "类型", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "1=结算,2=决算,3=预收款")
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 结算周期(1施工节点 2月)
|
||||
*/
|
||||
@ExcelProperty(value = "结算周期", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "1=施工节点,2=月")
|
||||
private String settlementCycle;
|
||||
|
||||
/**
|
||||
* 结算账龄(天)
|
||||
*/
|
||||
@ExcelProperty(value = "结算账龄(天)")
|
||||
private Long settlementAging;
|
||||
|
||||
/**
|
||||
* 里程碑节点
|
||||
*/
|
||||
@ExcelProperty(value = "里程碑节点")
|
||||
private String milestoneNode;
|
||||
|
||||
/**
|
||||
* 选择值(1合同金额 2本期结算金额 3累计结算金额 4累计结算百分比)
|
||||
*/
|
||||
@ExcelProperty(value = "选择值", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "1=合同金额,2=本期结算金额,3=累计结算金额,4=累计结算百分比")
|
||||
private String selectValue;
|
||||
|
||||
/**
|
||||
* 比较符
|
||||
*/
|
||||
@ExcelProperty(value = "比较符")
|
||||
private String comparisonSymbol;
|
||||
|
||||
/**
|
||||
* 比较值
|
||||
*/
|
||||
@ExcelProperty(value = "比较值")
|
||||
private String comparisonValue;
|
||||
|
||||
/**
|
||||
* 收款账龄(天)
|
||||
*/
|
||||
@ExcelProperty(value = "收款账龄(天)")
|
||||
private Long collectionAging;
|
||||
|
||||
/**
|
||||
* 收款基数(1合同金额 2本期结算金额)
|
||||
*/
|
||||
@ExcelProperty(value = "收款基数(1合同金额 2本期结算金额)")
|
||||
private Long collectionBase;
|
||||
|
||||
/**
|
||||
* 收款比例(%)
|
||||
*/
|
||||
@ExcelProperty(value = "收款比例(%)")
|
||||
private Long collectionRatio;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remarks;
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdBusinessSeal;
|
||||
import org.dromara.xzd.domain.vo.XzdBusinessSealVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 印章帮助Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdBusinessSealMapper extends BaseMapperPlus<XzdBusinessSeal, XzdBusinessSealVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractAdvanceInfo;
|
||||
import org.dromara.xzd.domain.vo.XzdContractAdvanceInfoVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 合同条款-预收预付款项Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdContractAdvanceInfoMapper extends BaseMapperPlus<XzdContractAdvanceInfo, XzdContractAdvanceInfoVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractClause;
|
||||
import org.dromara.xzd.domain.vo.XzdContractClauseVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 合同条款-合同条款Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdContractClauseMapper extends BaseMapperPlus<XzdContractClause, XzdContractClauseVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractDepositInfo;
|
||||
import org.dromara.xzd.domain.vo.XzdContractDepositInfoVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 合同主要条款约定Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdContractDepositInfoMapper extends BaseMapperPlus<XzdContractDepositInfo, XzdContractDepositInfoVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdContractDetails;
|
||||
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 承包合同信息Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdContractDetailsMapper extends BaseMapperPlus<XzdContractDetails, XzdContractDetailsVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdDeductionItems;
|
||||
import org.dromara.xzd.domain.vo.XzdDeductionItemsVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 合同条款-扣款与奖励项Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdDeductionItemsMapper extends BaseMapperPlus<XzdDeductionItems, XzdDeductionItemsVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package org.dromara.xzd.mapper;
|
||||
|
||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||
import org.dromara.xzd.domain.vo.XzdSettlementRulesVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 支付条款Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
public interface XzdSettlementRulesMapper extends BaseMapperPlus<XzdSettlementRules, XzdSettlementRulesVo> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdBusinessSealVo;
|
||||
import org.dromara.xzd.domain.bo.XzdBusinessSealBo;
|
||||
import org.dromara.xzd.domain.XzdBusinessSeal;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdBusinessSealService extends IService<XzdBusinessSeal>{
|
||||
|
||||
/**
|
||||
* 查询印章帮助
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 印章帮助
|
||||
*/
|
||||
XzdBusinessSealVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询印章帮助列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 印章帮助分页列表
|
||||
*/
|
||||
TableDataInfo<XzdBusinessSealVo> queryPageList(XzdBusinessSealBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的印章帮助列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 印章帮助列表
|
||||
*/
|
||||
List<XzdBusinessSealVo> queryList(XzdBusinessSealBo bo);
|
||||
|
||||
/**
|
||||
* 新增印章帮助
|
||||
*
|
||||
* @param bo 印章帮助
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdBusinessSealBo bo);
|
||||
|
||||
/**
|
||||
* 修改印章帮助
|
||||
*
|
||||
* @param bo 印章帮助
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdBusinessSealBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除印章帮助信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdContractAdvanceInfoVo;
|
||||
import org.dromara.xzd.domain.bo.XzdContractAdvanceInfoBo;
|
||||
import org.dromara.xzd.domain.XzdContractAdvanceInfo;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdContractAdvanceInfoService extends IService<XzdContractAdvanceInfo>{
|
||||
|
||||
/**
|
||||
* 查询合同条款-预收预付款项
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-预收预付款项
|
||||
*/
|
||||
XzdContractAdvanceInfoVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-预收预付款项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-预收预付款项分页列表
|
||||
*/
|
||||
TableDataInfo<XzdContractAdvanceInfoVo> queryPageList(XzdContractAdvanceInfoBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-预收预付款项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-预收预付款项列表
|
||||
*/
|
||||
List<XzdContractAdvanceInfoVo> queryList(XzdContractAdvanceInfoBo bo);
|
||||
|
||||
/**
|
||||
* 新增合同条款-预收预付款项
|
||||
*
|
||||
* @param bo 合同条款-预收预付款项
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdContractAdvanceInfoBo bo);
|
||||
|
||||
/**
|
||||
* 修改合同条款-预收预付款项
|
||||
*
|
||||
* @param bo 合同条款-预收预付款项
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdContractAdvanceInfoBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-预收预付款项信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdContractClauseVo;
|
||||
import org.dromara.xzd.domain.bo.XzdContractClauseBo;
|
||||
import org.dromara.xzd.domain.XzdContractClause;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdContractClauseService extends IService<XzdContractClause>{
|
||||
|
||||
/**
|
||||
* 查询合同条款-合同条款
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-合同条款
|
||||
*/
|
||||
XzdContractClauseVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-合同条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-合同条款分页列表
|
||||
*/
|
||||
TableDataInfo<XzdContractClauseVo> queryPageList(XzdContractClauseBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-合同条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-合同条款列表
|
||||
*/
|
||||
List<XzdContractClauseVo> queryList(XzdContractClauseBo bo);
|
||||
|
||||
/**
|
||||
* 新增合同条款-合同条款
|
||||
*
|
||||
* @param bo 合同条款-合同条款
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdContractClauseBo bo);
|
||||
|
||||
/**
|
||||
* 修改合同条款-合同条款
|
||||
*
|
||||
* @param bo 合同条款-合同条款
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdContractClauseBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-合同条款信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdContractDepositInfoVo;
|
||||
import org.dromara.xzd.domain.bo.XzdContractDepositInfoBo;
|
||||
import org.dromara.xzd.domain.XzdContractDepositInfo;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdContractDepositInfoService extends IService<XzdContractDepositInfo>{
|
||||
|
||||
/**
|
||||
* 查询合同主要条款约定
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同主要条款约定
|
||||
*/
|
||||
XzdContractDepositInfoVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询合同主要条款约定列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同主要条款约定分页列表
|
||||
*/
|
||||
TableDataInfo<XzdContractDepositInfoVo> queryPageList(XzdContractDepositInfoBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同主要条款约定列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同主要条款约定列表
|
||||
*/
|
||||
List<XzdContractDepositInfoVo> queryList(XzdContractDepositInfoBo bo);
|
||||
|
||||
/**
|
||||
* 新增合同主要条款约定
|
||||
*
|
||||
* @param bo 合同主要条款约定
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdContractDepositInfoBo bo);
|
||||
|
||||
/**
|
||||
* 修改合同主要条款约定
|
||||
*
|
||||
* @param bo 合同主要条款约定
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdContractDepositInfoBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同主要条款约定信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
|
||||
import org.dromara.xzd.domain.bo.XzdContractDetailsBo;
|
||||
import org.dromara.xzd.domain.XzdContractDetails;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdContractDetailsService extends IService<XzdContractDetails>{
|
||||
|
||||
/**
|
||||
* 查询承包合同信息
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 承包合同信息
|
||||
*/
|
||||
XzdContractDetailsVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询承包合同信息列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 承包合同信息分页列表
|
||||
*/
|
||||
TableDataInfo<XzdContractDetailsVo> queryPageList(XzdContractDetailsBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的承包合同信息列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 承包合同信息列表
|
||||
*/
|
||||
List<XzdContractDetailsVo> queryList(XzdContractDetailsBo bo);
|
||||
|
||||
/**
|
||||
* 新增承包合同信息
|
||||
*
|
||||
* @param bo 承包合同信息
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdContractDetailsBo bo);
|
||||
|
||||
/**
|
||||
* 修改承包合同信息
|
||||
*
|
||||
* @param bo 承包合同信息
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdContractDetailsBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除承包合同信息信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdDeductionItemsVo;
|
||||
import org.dromara.xzd.domain.bo.XzdDeductionItemsBo;
|
||||
import org.dromara.xzd.domain.XzdDeductionItems;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdDeductionItemsService extends IService<XzdDeductionItems>{
|
||||
|
||||
/**
|
||||
* 查询合同条款-扣款与奖励项
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-扣款与奖励项
|
||||
*/
|
||||
XzdDeductionItemsVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-扣款与奖励项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-扣款与奖励项分页列表
|
||||
*/
|
||||
TableDataInfo<XzdDeductionItemsVo> queryPageList(XzdDeductionItemsBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-扣款与奖励项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-扣款与奖励项列表
|
||||
*/
|
||||
List<XzdDeductionItemsVo> queryList(XzdDeductionItemsBo bo);
|
||||
|
||||
/**
|
||||
* 新增合同条款-扣款与奖励项
|
||||
*
|
||||
* @param bo 合同条款-扣款与奖励项
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdDeductionItemsBo bo);
|
||||
|
||||
/**
|
||||
* 修改合同条款-扣款与奖励项
|
||||
*
|
||||
* @param bo 合同条款-扣款与奖励项
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdDeductionItemsBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-扣款与奖励项信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -0,0 +1,70 @@
|
||||
package org.dromara.xzd.service;
|
||||
|
||||
import org.dromara.xzd.domain.vo.XzdSettlementRulesVo;
|
||||
import org.dromara.xzd.domain.bo.XzdSettlementRulesBo;
|
||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||
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-12
|
||||
*/
|
||||
public interface IXzdSettlementRulesService extends IService<XzdSettlementRules>{
|
||||
|
||||
/**
|
||||
* 查询支付条款
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 支付条款
|
||||
*/
|
||||
XzdSettlementRulesVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 分页查询支付条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 支付条款分页列表
|
||||
*/
|
||||
TableDataInfo<XzdSettlementRulesVo> queryPageList(XzdSettlementRulesBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询符合条件的支付条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 支付条款列表
|
||||
*/
|
||||
List<XzdSettlementRulesVo> queryList(XzdSettlementRulesBo bo);
|
||||
|
||||
/**
|
||||
* 新增支付条款
|
||||
*
|
||||
* @param bo 支付条款
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
Boolean insertByBo(XzdSettlementRulesBo bo);
|
||||
|
||||
/**
|
||||
* 修改支付条款
|
||||
*
|
||||
* @param bo 支付条款
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
Boolean updateByBo(XzdSettlementRulesBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除支付条款信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@ -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.core.utils.StringUtils;
|
||||
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.XzdBusinessSealBo;
|
||||
import org.dromara.xzd.domain.vo.XzdBusinessSealVo;
|
||||
import org.dromara.xzd.domain.XzdBusinessSeal;
|
||||
import org.dromara.xzd.mapper.XzdBusinessSealMapper;
|
||||
import org.dromara.xzd.service.IXzdBusinessSealService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 印章帮助Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdBusinessSealServiceImpl extends ServiceImpl<XzdBusinessSealMapper, XzdBusinessSeal> implements IXzdBusinessSealService {
|
||||
|
||||
private final XzdBusinessSealMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询印章帮助
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 印章帮助
|
||||
*/
|
||||
@Override
|
||||
public XzdBusinessSealVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询印章帮助列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 印章帮助分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdBusinessSealVo> queryPageList(XzdBusinessSealBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdBusinessSeal> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdBusinessSealVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的印章帮助列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 印章帮助列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdBusinessSealVo> queryList(XzdBusinessSealBo bo) {
|
||||
LambdaQueryWrapper<XzdBusinessSeal> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdBusinessSeal> buildQueryWrapper(XzdBusinessSealBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdBusinessSeal> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdBusinessSeal::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getYzNum()), XzdBusinessSeal::getYzNum, bo.getYzNum());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getYzName()), XzdBusinessSeal::getYzName, bo.getYzName());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增印章帮助
|
||||
*
|
||||
* @param bo 印章帮助
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdBusinessSealBo bo) {
|
||||
XzdBusinessSeal add = MapstructUtils.convert(bo, XzdBusinessSeal.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改印章帮助
|
||||
*
|
||||
* @param bo 印章帮助
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdBusinessSealBo bo) {
|
||||
XzdBusinessSeal update = MapstructUtils.convert(bo, XzdBusinessSeal.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdBusinessSeal entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除印章帮助信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,142 @@
|
||||
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.core.utils.StringUtils;
|
||||
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.XzdContractAdvanceInfoBo;
|
||||
import org.dromara.xzd.domain.vo.XzdContractAdvanceInfoVo;
|
||||
import org.dromara.xzd.domain.XzdContractAdvanceInfo;
|
||||
import org.dromara.xzd.mapper.XzdContractAdvanceInfoMapper;
|
||||
import org.dromara.xzd.service.IXzdContractAdvanceInfoService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 合同条款-预收预付款项Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdContractAdvanceInfoServiceImpl extends ServiceImpl<XzdContractAdvanceInfoMapper, XzdContractAdvanceInfo> implements IXzdContractAdvanceInfoService {
|
||||
|
||||
private final XzdContractAdvanceInfoMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询合同条款-预收预付款项
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-预收预付款项
|
||||
*/
|
||||
@Override
|
||||
public XzdContractAdvanceInfoVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-预收预付款项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-预收预付款项分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdContractAdvanceInfoVo> queryPageList(XzdContractAdvanceInfoBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdContractAdvanceInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-预收预付款项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-预收预付款项列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdContractAdvanceInfoVo> queryList(XzdContractAdvanceInfoBo bo) {
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdContractAdvanceInfo> buildQueryWrapper(XzdContractAdvanceInfoBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdContractAdvanceInfo::getId);
|
||||
lqw.like(StringUtils.isNotBlank(bo.getTableName()), XzdContractAdvanceInfo::getTableName, bo.getTableName());
|
||||
lqw.eq(bo.getContractDetailsId() != null, XzdContractAdvanceInfo::getContractDetailsId, bo.getContractDetailsId());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), XzdContractAdvanceInfo::getName, bo.getName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFunds()), XzdContractAdvanceInfo::getFunds, bo.getFunds());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeFunds()), XzdContractAdvanceInfo::getChangeFunds, bo.getChangeFunds());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getItemAttribute()), XzdContractAdvanceInfo::getItemAttribute, bo.getItemAttribute());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeItemAttribute()), XzdContractAdvanceInfo::getChangeItemAttribute, bo.getChangeItemAttribute());
|
||||
lqw.eq(bo.getContractAmount() != null, XzdContractAdvanceInfo::getContractAmount, bo.getContractAmount());
|
||||
lqw.eq(bo.getChangeContractAmount() != null, XzdContractAdvanceInfo::getChangeContractAmount, bo.getChangeContractAmount());
|
||||
lqw.eq(bo.getAdvancePercentage() != null, XzdContractAdvanceInfo::getAdvancePercentage, bo.getAdvancePercentage());
|
||||
lqw.eq(bo.getChangeAdvancePercentage() != null, XzdContractAdvanceInfo::getChangeAdvancePercentage, bo.getChangeAdvancePercentage());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), XzdContractAdvanceInfo::getRemarks, bo.getRemarks());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同条款-预收预付款项
|
||||
*
|
||||
* @param bo 合同条款-预收预付款项
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdContractAdvanceInfoBo bo) {
|
||||
XzdContractAdvanceInfo add = MapstructUtils.convert(bo, XzdContractAdvanceInfo.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同条款-预收预付款项
|
||||
*
|
||||
* @param bo 合同条款-预收预付款项
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdContractAdvanceInfoBo bo) {
|
||||
XzdContractAdvanceInfo update = MapstructUtils.convert(bo, XzdContractAdvanceInfo.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdContractAdvanceInfo entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-预收预付款项信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@ -14,6 +14,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.system.domain.vo.SysDeptVo;
|
||||
import org.dromara.system.domain.vo.SysUserVo;
|
||||
import org.dromara.system.service.impl.SysDeptServiceImpl;
|
||||
import org.dromara.system.service.impl.SysOssServiceImpl;
|
||||
import org.dromara.system.service.impl.SysUserServiceImpl;
|
||||
import org.dromara.xzd.domain.dto.QuerCorrespondentDto;
|
||||
import org.dromara.xzd.domain.vo.XzdSupplierInfoVo;
|
||||
@ -25,11 +26,9 @@ import org.dromara.xzd.domain.vo.XzdContractAgreementVo;
|
||||
import org.dromara.xzd.domain.XzdContractAgreement;
|
||||
import org.dromara.xzd.mapper.XzdContractAgreementMapper;
|
||||
import org.dromara.xzd.service.IXzdContractAgreementService;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 合作协议Service业务层处理
|
||||
@ -51,6 +50,8 @@ public class XzdContractAgreementServiceImpl extends ServiceImpl<XzdContractAgre
|
||||
private SysDeptServiceImpl sysDeptService;
|
||||
@Autowired
|
||||
private SysUserServiceImpl sysUserService;
|
||||
@Autowired
|
||||
private SysOssServiceImpl sysOssService;
|
||||
|
||||
/**
|
||||
* 查询合作协议
|
||||
@ -139,13 +140,26 @@ public class XzdContractAgreementServiceImpl extends ServiceImpl<XzdContractAgre
|
||||
* @param bo 合作协议
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public Boolean updateByBo(XzdContractAgreementBo bo) {
|
||||
XzdContractAgreement update = MapstructUtils.convert(bo, XzdContractAgreement.class);
|
||||
validEntityBeforeSave(update);
|
||||
// validEntityBeforeSave(update);
|
||||
//老数据
|
||||
XzdContractAgreementVo old = baseMapper.selectVoById(update.getId());
|
||||
setValue(Collections.singletonList(old));
|
||||
//处理文件
|
||||
List<String> oldFiles = Arrays.stream(old.getFileId().split(",")).toList();
|
||||
List<String> newFiles = Arrays.stream(bo.getFileId().split(",")).toList();
|
||||
|
||||
List<Long> deleteIds = new ArrayList<>();
|
||||
|
||||
for (String oldFile : oldFiles) {
|
||||
if (!newFiles.contains(oldFile)){
|
||||
deleteIds.add(Long.valueOf(oldFile));
|
||||
}
|
||||
}
|
||||
sysOssService.deleteWithValidByIds(deleteIds, false);
|
||||
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
@ -169,6 +183,13 @@ public class XzdContractAgreementServiceImpl extends ServiceImpl<XzdContractAgre
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
//删除文件
|
||||
for (Long id : ids) {
|
||||
XzdContractAgreementVo vo = baseMapper.selectVoById(id);
|
||||
if (vo.getFileId() != null && !vo.getFileId().isEmpty()){
|
||||
sysOssService.deleteWithValidByIds(Arrays.stream(vo.getFileId().split(",")).map(Long::valueOf).toList(), false);
|
||||
}
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
|
||||
@ -196,6 +217,11 @@ public class XzdContractAgreementServiceImpl extends ServiceImpl<XzdContractAgre
|
||||
if (sysUserVo != null){
|
||||
vo.setProjectManagerName(sysUserVo.getNickName());
|
||||
}
|
||||
//录入人
|
||||
SysUserVo sysUserVo1 = sysUserService.selectUserById(vo.getCreateBy());
|
||||
if (sysUserVo1 != null){
|
||||
vo.setCreateUser(sysUserVo1.getUserName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,135 @@
|
||||
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.core.utils.StringUtils;
|
||||
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.XzdContractClauseBo;
|
||||
import org.dromara.xzd.domain.vo.XzdContractClauseVo;
|
||||
import org.dromara.xzd.domain.XzdContractClause;
|
||||
import org.dromara.xzd.mapper.XzdContractClauseMapper;
|
||||
import org.dromara.xzd.service.IXzdContractClauseService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 合同条款-合同条款Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdContractClauseServiceImpl extends ServiceImpl<XzdContractClauseMapper, XzdContractClause> implements IXzdContractClauseService {
|
||||
|
||||
private final XzdContractClauseMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询合同条款-合同条款
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-合同条款
|
||||
*/
|
||||
@Override
|
||||
public XzdContractClauseVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-合同条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-合同条款分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdContractClauseVo> queryPageList(XzdContractClauseBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdContractClause> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdContractClauseVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-合同条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-合同条款列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdContractClauseVo> queryList(XzdContractClauseBo bo) {
|
||||
LambdaQueryWrapper<XzdContractClause> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdContractClause> buildQueryWrapper(XzdContractClauseBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdContractClause> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdContractClause::getId);
|
||||
lqw.like(StringUtils.isNotBlank(bo.getTableName()), XzdContractClause::getTableName, bo.getTableName());
|
||||
lqw.eq(bo.getContractDetailsId() != null, XzdContractClause::getContractDetailsId, bo.getContractDetailsId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContractClause()), XzdContractClause::getContractClause, bo.getContractClause());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContent()), XzdContractClause::getContent, bo.getContent());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeContent()), XzdContractClause::getChangeContent, bo.getChangeContent());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同条款-合同条款
|
||||
*
|
||||
* @param bo 合同条款-合同条款
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdContractClauseBo bo) {
|
||||
XzdContractClause add = MapstructUtils.convert(bo, XzdContractClause.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同条款-合同条款
|
||||
*
|
||||
* @param bo 合同条款-合同条款
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdContractClauseBo bo) {
|
||||
XzdContractClause update = MapstructUtils.convert(bo, XzdContractClause.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdContractClause entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-合同条款信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,140 @@
|
||||
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.core.utils.StringUtils;
|
||||
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.XzdContractDepositInfoBo;
|
||||
import org.dromara.xzd.domain.vo.XzdContractDepositInfoVo;
|
||||
import org.dromara.xzd.domain.XzdContractDepositInfo;
|
||||
import org.dromara.xzd.mapper.XzdContractDepositInfoMapper;
|
||||
import org.dromara.xzd.service.IXzdContractDepositInfoService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 合同主要条款约定Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdContractDepositInfoServiceImpl extends ServiceImpl<XzdContractDepositInfoMapper, XzdContractDepositInfo> implements IXzdContractDepositInfoService {
|
||||
|
||||
private final XzdContractDepositInfoMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询合同主要条款约定
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同主要条款约定
|
||||
*/
|
||||
@Override
|
||||
public XzdContractDepositInfoVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询合同主要条款约定列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同主要条款约定分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdContractDepositInfoVo> queryPageList(XzdContractDepositInfoBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdContractDepositInfo> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdContractDepositInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同主要条款约定列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同主要条款约定列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdContractDepositInfoVo> queryList(XzdContractDepositInfoBo bo) {
|
||||
LambdaQueryWrapper<XzdContractDepositInfo> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdContractDepositInfo> buildQueryWrapper(XzdContractDepositInfoBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdContractDepositInfo> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdContractDepositInfo::getId);
|
||||
lqw.eq(bo.getContractDetailsId() != null, XzdContractDepositInfo::getContractDetailsId, bo.getContractDetailsId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPerformanceDepositForm()), XzdContractDepositInfo::getPerformanceDepositForm, bo.getPerformanceDepositForm());
|
||||
lqw.eq(bo.getPerformanceDepositRatio() != null, XzdContractDepositInfo::getPerformanceDepositRatio, bo.getPerformanceDepositRatio());
|
||||
lqw.eq(bo.getPerformanceDepositAmount() != null, XzdContractDepositInfo::getPerformanceDepositAmount, bo.getPerformanceDepositAmount());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getHasAdvancePayment()), XzdContractDepositInfo::getHasAdvancePayment, bo.getHasAdvancePayment());
|
||||
lqw.eq(bo.getAdvancePaymentRatio() != null, XzdContractDepositInfo::getAdvancePaymentRatio, bo.getAdvancePaymentRatio());
|
||||
lqw.eq(bo.getAdvancePaymentAmount() != null, XzdContractDepositInfo::getAdvancePaymentAmount, bo.getAdvancePaymentAmount());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getQualityDepositForm()), XzdContractDepositInfo::getQualityDepositForm, bo.getQualityDepositForm());
|
||||
lqw.eq(bo.getQualityDepositRatio() != null, XzdContractDepositInfo::getQualityDepositRatio, bo.getQualityDepositRatio());
|
||||
lqw.eq(bo.getQualityDepositAmount() != null, XzdContractDepositInfo::getQualityDepositAmount, bo.getQualityDepositAmount());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同主要条款约定
|
||||
*
|
||||
* @param bo 合同主要条款约定
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdContractDepositInfoBo bo) {
|
||||
XzdContractDepositInfo add = MapstructUtils.convert(bo, XzdContractDepositInfo.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同主要条款约定
|
||||
*
|
||||
* @param bo 合同主要条款约定
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdContractDepositInfoBo bo) {
|
||||
XzdContractDepositInfo update = MapstructUtils.convert(bo, XzdContractDepositInfo.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdContractDepositInfo entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同主要条款约定信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,438 @@
|
||||
package org.dromara.xzd.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
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.dromara.ctr.domain.ContractPaymentClause;
|
||||
import org.dromara.system.domain.vo.SysDeptVo;
|
||||
import org.dromara.system.service.impl.SysDeptServiceImpl;
|
||||
import org.dromara.system.service.impl.SysOssServiceImpl;
|
||||
import org.dromara.xzd.domain.*;
|
||||
import org.dromara.xzd.domain.dto.QuerCorrespondentDto;
|
||||
import org.dromara.xzd.domain.vo.*;
|
||||
import org.dromara.xzd.service.IXzdCorrespondentList;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.dromara.xzd.domain.bo.XzdContractDetailsBo;
|
||||
import org.dromara.xzd.mapper.XzdContractDetailsMapper;
|
||||
import org.dromara.xzd.service.IXzdContractDetailsService;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 承包合同信息Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdContractDetailsServiceImpl extends ServiceImpl<XzdContractDetailsMapper, XzdContractDetails> implements IXzdContractDetailsService {
|
||||
|
||||
private final XzdContractDetailsMapper baseMapper;
|
||||
@Autowired
|
||||
private XzdContractAdvanceInfoServiceImpl xzdContractAdvanceInfoService;
|
||||
@Autowired
|
||||
private XzdDeductionItemsServiceImpl xzdDeductionItemsService;
|
||||
@Autowired
|
||||
private XzdContractClauseServiceImpl xzdContractClauseService;
|
||||
@Autowired
|
||||
private XzdSettlementRulesServiceImpl xzdSettlementRulesService;
|
||||
@Autowired
|
||||
private XzdContractDepositInfoServiceImpl xzdContractDepositInfoService;
|
||||
@Autowired
|
||||
private SysOssServiceImpl sysOssService;
|
||||
@Autowired
|
||||
private SysDeptServiceImpl sysDeptService;
|
||||
@Autowired
|
||||
private XzdProjectServiceImpl xzdProjectService;
|
||||
@Autowired
|
||||
private IXzdCorrespondentList iXzdCorrespondentList;
|
||||
@Autowired
|
||||
private XzdSupplierInfoServiceImpl xzdSupplierInfoService;
|
||||
@Autowired
|
||||
private XzdBusinessSealServiceImpl xzdBusinessSealService;
|
||||
|
||||
/**
|
||||
* 查询承包合同信息
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 承包合同信息
|
||||
*/
|
||||
@Override
|
||||
public XzdContractDetailsVo queryById(Long id){
|
||||
XzdContractDetailsVo xzdContractDetailsVo = baseMapper.selectVoById(id);
|
||||
List<XzdContractDetailsVo> xzdContractDetailsVo1 = List.of(xzdContractDetailsVo);
|
||||
setValue(xzdContractDetailsVo1);
|
||||
return xzdContractDetailsVo1.getFirst();
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询承包合同信息列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 承包合同信息分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdContractDetailsVo> queryPageList(XzdContractDetailsBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdContractDetails> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdContractDetailsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
setValue(result.getRecords());
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的承包合同信息列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 承包合同信息列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdContractDetailsVo> queryList(XzdContractDetailsBo bo) {
|
||||
LambdaQueryWrapper<XzdContractDetails> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdContractDetails> buildQueryWrapper(XzdContractDetailsBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdContractDetails> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdContractDetails::getId);
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContractType()), XzdContractDetails::getContractType, bo.getContractType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContractCode()), XzdContractDetails::getContractCode, bo.getContractCode());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getContractName()), XzdContractDetails::getContractName, bo.getContractName());
|
||||
lqw.eq(bo.getDocumentDate() != null, XzdContractDetails::getDocumentDate, bo.getDocumentDate());
|
||||
lqw.eq(bo.getProject() != null, XzdContractDetails::getProject, bo.getProject());
|
||||
lqw.eq(bo.getSigningDate() != null, XzdContractDetails::getSigningDate, bo.getSigningDate());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCustomerNature()), XzdContractDetails::getCustomerNature, bo.getCustomerNature());
|
||||
lqw.eq(bo.getPartyAUnit() != null, XzdContractDetails::getPartyAUnit, bo.getPartyAUnit());
|
||||
lqw.eq(bo.getPartyBUnit() != null, XzdContractDetails::getPartyBUnit, bo.getPartyBUnit());
|
||||
lqw.eq(bo.getContractAmount() != null, XzdContractDetails::getContractAmount, bo.getContractAmount());
|
||||
lqw.eq(bo.getInvoicingUnit() != null, XzdContractDetails::getInvoicingUnit, bo.getInvoicingUnit());
|
||||
lqw.eq(bo.getTotalInvestment() != null, XzdContractDetails::getTotalInvestment, bo.getTotalInvestment());
|
||||
lqw.eq(bo.getBudgetClassification() != null, XzdContractDetails::getBudgetClassification, bo.getBudgetClassification());
|
||||
lqw.eq(bo.getTicketReceivingUnit() != null, XzdContractDetails::getTicketReceivingUnit, bo.getTicketReceivingUnit());
|
||||
lqw.eq(bo.getFilingDate() != null, XzdContractDetails::getFilingDate, bo.getFilingDate());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPaymentMethod()), XzdContractDetails::getPaymentMethod, bo.getPaymentMethod());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPaymentTerms()), XzdContractDetails::getPaymentTerms, bo.getPaymentTerms());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getProjectScale()), XzdContractDetails::getProjectScale, bo.getProjectScale());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), XzdContractDetails::getRemarks, bo.getRemarks());
|
||||
lqw.like(bo.getSealName() != null, XzdContractDetails::getSealName, bo.getSealName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCapitalizedTaxInclusiveTotal()), XzdContractDetails::getCapitalizedTaxInclusiveTotal, bo.getCapitalizedTaxInclusiveTotal());
|
||||
lqw.eq(bo.getSigningOrganization() != null, XzdContractDetails::getSigningOrganization, bo.getSigningOrganization());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getProjectType()), XzdContractDetails::getProjectType, bo.getProjectType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getProjectCategory()), XzdContractDetails::getProjectCategory, bo.getProjectCategory());
|
||||
lqw.eq(bo.getIsStampApplicationAfterApproval() != null, XzdContractDetails::getIsStampApplicationAfterApproval, bo.getIsStampApplicationAfterApproval());
|
||||
lqw.eq(bo.getProjectResponsiblePerson() != null, XzdContractDetails::getProjectResponsiblePerson, bo.getProjectResponsiblePerson());
|
||||
lqw.eq(bo.getIsNeedFiling() != null, XzdContractDetails::getIsNeedFiling, bo.getIsNeedFiling());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFilingStatus()), XzdContractDetails::getFilingStatus, bo.getFilingStatus());
|
||||
lqw.eq(bo.getFilingTime() != null, XzdContractDetails::getFilingTime, bo.getFilingTime());
|
||||
lqw.eq(bo.getIsFixedUnitPriceContract() != null, XzdContractDetails::getIsFixedUnitPriceContract, bo.getIsFixedUnitPriceContract());
|
||||
lqw.eq(bo.getIsLumpSumContract() != null, XzdContractDetails::getIsLumpSumContract, bo.getIsLumpSumContract());
|
||||
lqw.eq(bo.getIsRealTimeRefresh() != null, XzdContractDetails::getIsRealTimeRefresh, bo.getIsRealTimeRefresh());
|
||||
lqw.eq(bo.getOriginalContractAmount() != null, XzdContractDetails::getOriginalContractAmount, bo.getOriginalContractAmount());
|
||||
lqw.eq(bo.getContractTaxInclusiveAmount() != null, XzdContractDetails::getContractTaxInclusiveAmount, bo.getContractTaxInclusiveAmount());
|
||||
lqw.eq(bo.getCumulativeSettlementAmount() != null, XzdContractDetails::getCumulativeSettlementAmount, bo.getCumulativeSettlementAmount());
|
||||
lqw.eq(bo.getDanjuId() != null, XzdContractDetails::getDanjuId, bo.getDanjuId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdContractDetails::getFileId, bo.getFileId());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增承包合同信息
|
||||
*
|
||||
* @param bo 承包合同信息
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public Boolean insertByBo(XzdContractDetailsBo bo) {
|
||||
XzdContractDetails add = MapstructUtils.convert(bo, XzdContractDetails.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (!flag) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
String tableName = null;
|
||||
Class<?> boClass = bo.getClass();
|
||||
AutoMapper autoMapper = boClass.getAnnotation(AutoMapper.class);
|
||||
if (autoMapper != null) {
|
||||
Class<?> targetClass = autoMapper.target();
|
||||
TableName tableNameAnnotation = targetClass.getAnnotation(TableName.class);
|
||||
if (tableNameAnnotation != null) {
|
||||
tableName = tableNameAnnotation.value();
|
||||
}
|
||||
}
|
||||
|
||||
//合同文本-预收款项
|
||||
for (XzdContractAdvanceInfo yskx : bo.getYskx()) {
|
||||
yskx.setTableName(tableName);
|
||||
yskx.setContractDetailsId(add.getId());
|
||||
}
|
||||
xzdContractAdvanceInfoService.saveBatch(bo.getYskx());
|
||||
|
||||
//合同条款-扣款与奖励项
|
||||
for (XzdDeductionItems kkyjlx : bo.getKkyjlx()) {
|
||||
kkyjlx.setTableName(tableName);
|
||||
kkyjlx.setContractDetailsId(add.getId());
|
||||
}
|
||||
xzdDeductionItemsService.saveBatch(bo.getKkyjlx());
|
||||
|
||||
//合同条款-合同条款
|
||||
for (XzdContractClause clause : bo.getHttk()) {
|
||||
clause.setTableName(tableName);
|
||||
clause.setContractDetailsId(add.getId());
|
||||
}
|
||||
xzdContractClauseService.saveBatch(bo.getHttk());
|
||||
|
||||
//支付条款
|
||||
for (XzdSettlementRules clause : bo.getZftk()) {
|
||||
clause.setContractDetailsId(add.getId());
|
||||
}
|
||||
xzdSettlementRulesService.saveBatch(bo.getZftk());
|
||||
|
||||
//合同主要条款约定
|
||||
for (XzdContractDepositInfo contractDepositInfo : bo.getHtzytkyd()) {
|
||||
contractDepositInfo.setContractDetailsId(add.getId());
|
||||
}
|
||||
xzdContractDepositInfoService.saveBatch(bo.getHtzytkyd());
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改承包合同信息
|
||||
*
|
||||
* @param bo 承包合同信息
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public Boolean updateByBo(XzdContractDetailsBo bo) {
|
||||
|
||||
XzdContractDetails update = MapstructUtils.convert(bo, XzdContractDetails.class);
|
||||
|
||||
XzdContractDetails old = baseMapper.selectById(update.getId());
|
||||
|
||||
//合同文本-预收款项
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(XzdContractAdvanceInfo::getContractDetailsId, old.getId());
|
||||
List<XzdContractAdvanceInfo> advanceInfos = xzdContractAdvanceInfoService.list(lambdaQueryWrapper);
|
||||
for (XzdContractAdvanceInfo advanceInfo : advanceInfos) {
|
||||
if (!bo.getYskx().contains(advanceInfo)){
|
||||
xzdContractAdvanceInfoService.removeById(advanceInfo);
|
||||
}
|
||||
advanceInfo.setContractDetailsId(update.getId());
|
||||
}
|
||||
xzdContractAdvanceInfoService.saveOrUpdateBatch(bo.getYskx());
|
||||
|
||||
//合同条款-扣款与奖励项
|
||||
LambdaQueryWrapper<XzdDeductionItems> lambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper1.eq(XzdDeductionItems::getContractDetailsId, old.getId());
|
||||
List<XzdDeductionItems> deductionItems = xzdDeductionItemsService.list(lambdaQueryWrapper1);
|
||||
for (XzdDeductionItems advanceInfo : deductionItems) {
|
||||
if (!bo.getKkyjlx().contains(advanceInfo)){
|
||||
xzdDeductionItemsService.removeById(advanceInfo);
|
||||
}
|
||||
advanceInfo.setContractDetailsId(update.getId());
|
||||
}
|
||||
xzdDeductionItemsService.saveOrUpdateBatch(bo.getKkyjlx());
|
||||
|
||||
//合同条款-合同条款
|
||||
LambdaQueryWrapper<XzdContractClause> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper2.eq(XzdContractClause::getContractDetailsId, old.getId());
|
||||
List<XzdContractClause> clauses = xzdContractClauseService.list(lambdaQueryWrapper2);
|
||||
for (XzdContractClause advanceInfo : clauses) {
|
||||
if (!bo.getHttk().contains(advanceInfo)){
|
||||
xzdContractClauseService.removeById(advanceInfo);
|
||||
}
|
||||
advanceInfo.setContractDetailsId(update.getId());
|
||||
}
|
||||
xzdContractClauseService.saveOrUpdateBatch(bo.getHttk());
|
||||
|
||||
//支付条款
|
||||
LambdaQueryWrapper<XzdSettlementRules> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper3.eq(XzdSettlementRules::getContractDetailsId, old.getId());
|
||||
List<XzdSettlementRules> settlementRules = xzdSettlementRulesService.list(lambdaQueryWrapper3);
|
||||
for (XzdSettlementRules advanceInfo : settlementRules) {
|
||||
if (!bo.getZftk().contains(advanceInfo)){
|
||||
xzdSettlementRulesService.removeById(advanceInfo);
|
||||
}
|
||||
advanceInfo.setContractDetailsId(update.getId());
|
||||
}
|
||||
xzdSettlementRulesService.saveOrUpdateBatch(bo.getZftk());
|
||||
|
||||
//更新文件
|
||||
if (bo.getFileId() != null && !bo.getFileId().isEmpty()){
|
||||
List<Long> oldFileId = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
|
||||
List<Long> nowFileId = Arrays.stream(bo.getFileId().split(",")).map(Long::valueOf).toList();
|
||||
for (Long l : oldFileId) {
|
||||
if (!nowFileId.contains(l)){
|
||||
sysOssService.deleteWithValidByIds(List.of(l), false);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
if (old.getFileId()!= null && !old.getFileId().isEmpty()){
|
||||
List<Long> deleteIds = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
|
||||
sysOssService.deleteWithValidByIds(deleteIds, false);
|
||||
}
|
||||
}
|
||||
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdContractDetails entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除承包合同信息信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Transactional
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
|
||||
for (Long id : ids) {
|
||||
XzdContractDetailsVo vo = baseMapper.selectVoById(id);
|
||||
if (vo != null){
|
||||
//删除附件
|
||||
if (vo.getFileId()!= null && !vo.getFileId().isEmpty()){
|
||||
List<Long> deleteIds = Arrays.stream(vo.getFileId().split(",")).map(Long::valueOf).toList();
|
||||
if (!deleteIds.isEmpty()) {
|
||||
sysOssService.deleteWithValidByIds(deleteIds, false);
|
||||
}
|
||||
}
|
||||
|
||||
//合同文本-预收款项
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(XzdContractAdvanceInfo::getContractDetailsId, ids);
|
||||
xzdContractAdvanceInfoService.remove(lambdaQueryWrapper);
|
||||
|
||||
//合同条款-扣款与奖励项
|
||||
LambdaQueryWrapper<XzdDeductionItems> lambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper1.eq(XzdDeductionItems::getContractDetailsId, ids);
|
||||
xzdDeductionItemsService.remove(lambdaQueryWrapper1);
|
||||
|
||||
//合同条款-合同条款
|
||||
LambdaQueryWrapper<XzdContractClause> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper2.eq(XzdContractClause::getContractDetailsId, ids);
|
||||
xzdContractClauseService.remove(lambdaQueryWrapper2);
|
||||
|
||||
//支付条款
|
||||
LambdaQueryWrapper<XzdSettlementRules> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper3.eq(XzdSettlementRules::getContractDetailsId, ids);
|
||||
xzdSettlementRulesService.remove(lambdaQueryWrapper3);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
|
||||
public void setValue(List<XzdContractDetailsVo> infos){
|
||||
for (XzdContractDetailsVo info : infos) {
|
||||
//部门名称
|
||||
SysDeptVo sysDeptVo = sysDeptService.selectDeptById(info.getDeptId());
|
||||
if (sysDeptVo != null){
|
||||
info.setDeptName(sysDeptVo.getDeptName());
|
||||
}
|
||||
//项目名称
|
||||
XzdProjectVo projectVo = xzdProjectService.queryById(info.getProject());
|
||||
if (projectVo != null){
|
||||
info.setProjectName(projectVo.getProjectName());
|
||||
}
|
||||
//甲方单位(客户信息列表)
|
||||
R<QuerCorrespondentDto> byid = iXzdCorrespondentList.getCustomerByid(info.getPartyAUnit());
|
||||
if (byid!=null){
|
||||
if (byid.getData().getXzdCustomerinformation() != null){
|
||||
info.setPartyAUnitName(byid.getData().getXzdCustomerinformation().getUnitName());
|
||||
}
|
||||
}
|
||||
//乙方单位(供应商信息列表)
|
||||
XzdSupplierInfoVo xzdSupplierInfoVo = xzdSupplierInfoService.queryById(info.getPartyBUnit());
|
||||
if (xzdSupplierInfoVo != null){
|
||||
info.setPartyBUnitName(xzdSupplierInfoVo.getUnitName());
|
||||
}
|
||||
//开票单位名称(供应商名称)
|
||||
XzdSupplierInfoVo xzdSupplierInfoVo1 = xzdSupplierInfoService.queryById(info.getInvoicingUnit());
|
||||
if (xzdSupplierInfoVo1 != null){
|
||||
info.setInvoicingUnitName(xzdSupplierInfoVo1.getUnitName());
|
||||
}
|
||||
//收票单位名称(客户名称)
|
||||
R<QuerCorrespondentDto> byid2 = iXzdCorrespondentList.getCustomerByid(info.getTicketReceivingUnit());
|
||||
if (byid2!=null){
|
||||
if (byid2.getData().getXzdCustomerinformation() != null){
|
||||
info.setTicketReceivingUnitName(byid2.getData().getXzdCustomerinformation().getUnitName());
|
||||
}
|
||||
}
|
||||
//印章名称
|
||||
XzdBusinessSealVo sealVo = xzdBusinessSealService.queryById(info.getSealName());
|
||||
if (sealVo != null){
|
||||
info.setSealNameDetail(sealVo.getYzName());
|
||||
}
|
||||
//签约组织(供应商)
|
||||
XzdSupplierInfoVo xzdSupplierInfoVo2 = xzdSupplierInfoService.queryById(info.getSigningOrganization());
|
||||
if (xzdSupplierInfoVo2!= null){
|
||||
info.setSigningOrganizationName(xzdSupplierInfoVo2.getUnitName());
|
||||
}
|
||||
|
||||
//合同文本-预收款项
|
||||
LambdaQueryWrapper<XzdContractAdvanceInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(XzdContractAdvanceInfo::getContractDetailsId, info.getId());
|
||||
List<XzdContractAdvanceInfo> advanceInfos = xzdContractAdvanceInfoService.list(lambdaQueryWrapper);
|
||||
info.setYskx(advanceInfos);
|
||||
|
||||
//合同条款-扣款与奖励项
|
||||
LambdaQueryWrapper<XzdDeductionItems> lambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper1.eq(XzdDeductionItems::getContractDetailsId, info.getId());
|
||||
List<XzdDeductionItems> list = xzdDeductionItemsService.list(lambdaQueryWrapper1);
|
||||
info.setKkyjlx(list);
|
||||
|
||||
//合同条款-合同条款
|
||||
LambdaQueryWrapper<XzdContractClause> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper2.eq(XzdContractClause::getContractDetailsId, info.getId());
|
||||
List<XzdContractClause> list1 = xzdContractClauseService.list(lambdaQueryWrapper2);
|
||||
info.setHttk(list1);
|
||||
|
||||
//支付条款
|
||||
LambdaQueryWrapper<XzdSettlementRules> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper3.eq(XzdSettlementRules::getContractDetailsId, info.getId());
|
||||
List<XzdSettlementRules> list2 = xzdSettlementRulesService.list(lambdaQueryWrapper3);
|
||||
info.setZftk(list2);
|
||||
|
||||
//合同文本-合同主要条款约定
|
||||
LambdaQueryWrapper<XzdContractDepositInfo> lambdaQueryWrapper4 = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper4.eq(XzdContractDepositInfo::getContractDetailsId, info.getId());
|
||||
List<XzdContractDepositInfo> list3 = xzdContractDepositInfoService.list(lambdaQueryWrapper4);
|
||||
info.setHtzytqyd(list3);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,146 @@
|
||||
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.core.utils.StringUtils;
|
||||
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.XzdDeductionItemsBo;
|
||||
import org.dromara.xzd.domain.vo.XzdDeductionItemsVo;
|
||||
import org.dromara.xzd.domain.XzdDeductionItems;
|
||||
import org.dromara.xzd.mapper.XzdDeductionItemsMapper;
|
||||
import org.dromara.xzd.service.IXzdDeductionItemsService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 合同条款-扣款与奖励项Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdDeductionItemsServiceImpl extends ServiceImpl<XzdDeductionItemsMapper, XzdDeductionItems> implements IXzdDeductionItemsService {
|
||||
|
||||
private final XzdDeductionItemsMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询合同条款-扣款与奖励项
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 合同条款-扣款与奖励项
|
||||
*/
|
||||
@Override
|
||||
public XzdDeductionItemsVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询合同条款-扣款与奖励项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 合同条款-扣款与奖励项分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdDeductionItemsVo> queryPageList(XzdDeductionItemsBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdDeductionItems> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdDeductionItemsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同条款-扣款与奖励项列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 合同条款-扣款与奖励项列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdDeductionItemsVo> queryList(XzdDeductionItemsBo bo) {
|
||||
LambdaQueryWrapper<XzdDeductionItems> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdDeductionItems> buildQueryWrapper(XzdDeductionItemsBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdDeductionItems> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdDeductionItems::getId);
|
||||
lqw.like(StringUtils.isNotBlank(bo.getTableName()), XzdDeductionItems::getTableName, bo.getTableName());
|
||||
lqw.eq(bo.getContractDetailsId() != null, XzdDeductionItems::getContractDetailsId, bo.getContractDetailsId());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getDeductionProjectName()), XzdDeductionItems::getDeductionProjectName, bo.getDeductionProjectName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFunds()), XzdDeductionItems::getFunds, bo.getFunds());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeFunds()), XzdDeductionItems::getChangeFunds, bo.getChangeFunds());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getDeductionType()), XzdDeductionItems::getDeductionType, bo.getDeductionType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeDeductionType()), XzdDeductionItems::getChangeDeductionType, bo.getChangeDeductionType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getFormula()), XzdDeductionItems::getFormula, bo.getFormula());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeFormula()), XzdDeductionItems::getChangeFormula, bo.getChangeFormula());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getDeductionAttribute()), XzdDeductionItems::getDeductionAttribute, bo.getDeductionAttribute());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getChangeDeductionAttribute()), XzdDeductionItems::getChangeDeductionAttribute, bo.getChangeDeductionAttribute());
|
||||
lqw.eq(bo.getReturnTime() != null, XzdDeductionItems::getReturnTime, bo.getReturnTime());
|
||||
lqw.eq(bo.getChangeReturnTime() != null, XzdDeductionItems::getChangeReturnTime, bo.getChangeReturnTime());
|
||||
lqw.eq(bo.getApplyDeduction() != null, XzdDeductionItems::getApplyDeduction, bo.getApplyDeduction());
|
||||
lqw.eq(bo.getChangeApplyDeduction() != null, XzdDeductionItems::getChangeApplyDeduction, bo.getChangeApplyDeduction());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), XzdDeductionItems::getRemarks, bo.getRemarks());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增合同条款-扣款与奖励项
|
||||
*
|
||||
* @param bo 合同条款-扣款与奖励项
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdDeductionItemsBo bo) {
|
||||
XzdDeductionItems add = MapstructUtils.convert(bo, XzdDeductionItems.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同条款-扣款与奖励项
|
||||
*
|
||||
* @param bo 合同条款-扣款与奖励项
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdDeductionItemsBo bo) {
|
||||
XzdDeductionItems update = MapstructUtils.convert(bo, XzdDeductionItems.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdDeductionItems entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除合同条款-扣款与奖励项信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@ -11,8 +11,10 @@ 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.dromara.system.domain.vo.SysDeptVo;
|
||||
import org.dromara.system.domain.vo.SysOssVo;
|
||||
import org.dromara.system.domain.vo.SysUserVo;
|
||||
import org.dromara.system.service.ISysDeptService;
|
||||
import org.dromara.system.service.impl.SysOssServiceImpl;
|
||||
import org.dromara.system.service.impl.SysUserServiceImpl;
|
||||
import org.dromara.xzd.domain.*;
|
||||
@ -66,6 +68,8 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
|
||||
private XzdProjectTypeServiceImpl xzdProjectTypeService;
|
||||
@Autowired
|
||||
private SysUserServiceImpl sysUserService;
|
||||
@Autowired
|
||||
private ISysDeptService iSysDeptService;
|
||||
|
||||
/**
|
||||
* 查询项目信息
|
||||
@ -131,7 +135,7 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
|
||||
lqw.eq(bo.getPlannedCompletionDate() != null, XzdProject::getPlannedCompletionDate, bo.getPlannedCompletionDate());
|
||||
lqw.eq(bo.getActualStartDate() != null, XzdProject::getActualStartDate, bo.getActualStartDate());
|
||||
lqw.eq(bo.getActualCompletionDate() != null, XzdProject::getActualCompletionDate, bo.getActualCompletionDate());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getManagementOrganization()), XzdProject::getManagementOrganization, bo.getManagementOrganization());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getManagementOrganization()), XzdProject::getManagementOrganization, bo.getManagementOrganization());
|
||||
lqw.eq(bo.getProjectAmount() != null, XzdProject::getProjectAmount, bo.getProjectAmount());
|
||||
lqw.eq(bo.getFilingManager() != null, XzdProject::getFilingManager, bo.getFilingManager());
|
||||
lqw.eq(bo.getManagerExecution() != null, XzdProject::getManagerExecution, bo.getManagerExecution());
|
||||
@ -139,9 +143,9 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
|
||||
lqw.eq(bo.getWinningBidAmount() != null, XzdProject::getWinningBidAmount, bo.getWinningBidAmount());
|
||||
lqw.eq(bo.getPlannedDuration() != null, XzdProject::getPlannedDuration, bo.getPlannedDuration());
|
||||
lqw.eq(bo.getActualDuration() != null, XzdProject::getActualDuration, bo.getActualDuration());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getDefaultFinancialOrganization()), XzdProject::getDefaultFinancialOrganization, bo.getDefaultFinancialOrganization());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getDefaultFinancialOrganization()), XzdProject::getDefaultFinancialOrganization, bo.getDefaultFinancialOrganization());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContractingMethod()), XzdProject::getContractingMethod, bo.getContractingMethod());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getInvolvedFinancialOrganization()), XzdProject::getInvolvedFinancialOrganization, bo.getInvolvedFinancialOrganization());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getInvolvedFinancialOrganization()), XzdProject::getInvolvedFinancialOrganization, bo.getInvolvedFinancialOrganization());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getBusinessModel()), XzdProject::getBusinessModel, bo.getBusinessModel());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getConstructionUnit()), XzdProject::getConstructionUnit, bo.getConstructionUnit());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getProjectAttribute()), XzdProject::getProjectAttribute, bo.getProjectAttribute());
|
||||
@ -151,7 +155,7 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
|
||||
lqw.eq(bo.getPlannedTotalInvestment() != null, XzdProject::getPlannedTotalInvestment, bo.getPlannedTotalInvestment());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getGovFilingProjectName()), XzdProject::getGovFilingProjectName, bo.getGovFilingProjectName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getManagerExecutionPhone()), XzdProject::getManagerExecutionPhone, bo.getManagerExecutionPhone());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSharingOrganization()), XzdProject::getSharingOrganization, bo.getSharingOrganization());
|
||||
// lqw.eq(StringUtils.isNotBlank(bo.getSharingOrganization()), XzdProject::getSharingOrganization, bo.getSharingOrganization());
|
||||
lqw.eq(bo.getTargetWinningBidAmount() != null, XzdProject::getTargetWinningBidAmount, bo.getTargetWinningBidAmount());
|
||||
lqw.eq(bo.getTargetContractAmount() != null, XzdProject::getTargetContractAmount, bo.getTargetContractAmount());
|
||||
lqw.eq(bo.getTargetOutputValueAmount() != null, XzdProject::getTargetOutputValueAmount, bo.getTargetOutputValueAmount());
|
||||
@ -571,6 +575,46 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 管理组织
|
||||
*/
|
||||
if (entity.getManagementOrganization() != null){
|
||||
SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getManagementOrganization());
|
||||
if (sysDeptVo != null){
|
||||
entity.setManagementOrganizationName(sysDeptVo.getDeptName());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 默认财务 组织
|
||||
*/
|
||||
if (entity.getDefaultFinancialOrganization() != null){
|
||||
SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getDefaultFinancialOrganization());
|
||||
if (sysDeptVo != null){
|
||||
entity.setDefaultFinancialOrganizationName(sysDeptVo.getDeptName());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 涉及财务组织
|
||||
*/
|
||||
if (entity.getInvolvedFinancialOrganization() != null){
|
||||
SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getInvolvedFinancialOrganization());
|
||||
if (sysDeptVo != null){
|
||||
entity.setInvolvedFinancialOrganizationName(sysDeptVo.getDeptName());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 共享组织
|
||||
*/
|
||||
if (entity.getSharingOrganization() != null){
|
||||
SysDeptVo sysDeptVo = iSysDeptService.selectDeptById(entity.getSharingOrganization());
|
||||
if (sysDeptVo != null){
|
||||
entity.setSharingOrganizationName(sysDeptVo.getDeptName());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,142 @@
|
||||
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.core.utils.StringUtils;
|
||||
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.XzdSettlementRulesBo;
|
||||
import org.dromara.xzd.domain.vo.XzdSettlementRulesVo;
|
||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||
import org.dromara.xzd.mapper.XzdSettlementRulesMapper;
|
||||
import org.dromara.xzd.service.IXzdSettlementRulesService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 支付条款Service业务层处理
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2025-10-12
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class XzdSettlementRulesServiceImpl extends ServiceImpl<XzdSettlementRulesMapper, XzdSettlementRules> implements IXzdSettlementRulesService {
|
||||
|
||||
private final XzdSettlementRulesMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询支付条款
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 支付条款
|
||||
*/
|
||||
@Override
|
||||
public XzdSettlementRulesVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询支付条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @param pageQuery 分页参数
|
||||
* @return 支付条款分页列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<XzdSettlementRulesVo> queryPageList(XzdSettlementRulesBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<XzdSettlementRules> lqw = buildQueryWrapper(bo);
|
||||
Page<XzdSettlementRulesVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询符合条件的支付条款列表
|
||||
*
|
||||
* @param bo 查询条件
|
||||
* @return 支付条款列表
|
||||
*/
|
||||
@Override
|
||||
public List<XzdSettlementRulesVo> queryList(XzdSettlementRulesBo bo) {
|
||||
LambdaQueryWrapper<XzdSettlementRules> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<XzdSettlementRules> buildQueryWrapper(XzdSettlementRulesBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<XzdSettlementRules> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByDesc(XzdSettlementRules::getId);
|
||||
lqw.eq(bo.getContractDetailsId() != null, XzdSettlementRules::getContractDetailsId, bo.getContractDetailsId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getType()), XzdSettlementRules::getType, bo.getType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSettlementCycle()), XzdSettlementRules::getSettlementCycle, bo.getSettlementCycle());
|
||||
lqw.eq(bo.getSettlementAging() != null, XzdSettlementRules::getSettlementAging, bo.getSettlementAging());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getMilestoneNode()), XzdSettlementRules::getMilestoneNode, bo.getMilestoneNode());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSelectValue()), XzdSettlementRules::getSelectValue, bo.getSelectValue());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getComparisonSymbol()), XzdSettlementRules::getComparisonSymbol, bo.getComparisonSymbol());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getComparisonValue()), XzdSettlementRules::getComparisonValue, bo.getComparisonValue());
|
||||
lqw.eq(bo.getCollectionAging() != null, XzdSettlementRules::getCollectionAging, bo.getCollectionAging());
|
||||
lqw.eq(bo.getCollectionBase() != null, XzdSettlementRules::getCollectionBase, bo.getCollectionBase());
|
||||
lqw.eq(bo.getCollectionRatio() != null, XzdSettlementRules::getCollectionRatio, bo.getCollectionRatio());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRemarks()), XzdSettlementRules::getRemarks, bo.getRemarks());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增支付条款
|
||||
*
|
||||
* @param bo 支付条款
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(XzdSettlementRulesBo bo) {
|
||||
XzdSettlementRules add = MapstructUtils.convert(bo, XzdSettlementRules.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改支付条款
|
||||
*
|
||||
* @param bo 支付条款
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(XzdSettlementRulesBo bo) {
|
||||
XzdSettlementRules update = MapstructUtils.convert(bo, XzdSettlementRules.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(XzdSettlementRules entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验并批量删除支付条款信息
|
||||
*
|
||||
* @param ids 待删除的主键集合
|
||||
* @param isValid 是否进行有效性校验
|
||||
* @return 是否删除成功
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user