10-10-项目信息初始化

This commit is contained in:
2025-10-10 18:25:22 +08:00
parent 2d18345087
commit 33d051164e
50 changed files with 4530 additions and 13 deletions

View File

@ -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.XzdProjectVo;
import org.dromara.xzd.domain.bo.XzdProjectBo;
import org.dromara.xzd.service.IXzdProjectService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 项目信息
*
* @author Lion Li
* @date 2025-10-10
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/xzd/project")
public class XzdProjectController extends BaseController {
private final IXzdProjectService xzdProjectService;
/**
* 查询项目信息列表
*/
@SaCheckPermission("xzd:project:list")
@GetMapping("/list")
public TableDataInfo<XzdProjectVo> list(XzdProjectBo bo, PageQuery pageQuery) {
return xzdProjectService.queryPageList(bo, pageQuery);
}
/**
* 导出项目信息列表
*/
@SaCheckPermission("xzd:project:export")
@Log(title = "项目信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(XzdProjectBo bo, HttpServletResponse response) {
List<XzdProjectVo> list = xzdProjectService.queryList(bo);
ExcelUtil.exportExcel(list, "项目信息", XzdProjectVo.class, response);
}
/**
* 获取项目信息详细信息
*
* @param id 主键
*/
@SaCheckPermission("xzd:project:query")
@GetMapping("/{id}")
public R<XzdProjectVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(xzdProjectService.queryById(id));
}
/**
* 新增项目信息
*/
@SaCheckPermission("xzd:project:add")
@Log(title = "项目信息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody XzdProjectBo bo) {
return toAjax(xzdProjectService.insertByBo(bo));
}
/**
* 修改项目信息
*/
@SaCheckPermission("xzd:project:edit")
@Log(title = "项目信息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody XzdProjectBo bo) {
return toAjax(xzdProjectService.updateByBo(bo));
}
/**
* 删除项目信息
*
* @param ids 主键串
*/
@SaCheckPermission("xzd:project:remove")
@Log(title = "项目信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(xzdProjectService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@ -0,0 +1,218 @@
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 com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 项目信息对象 xzd_project
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project")
public class XzdProject extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private Long id;
/**
* 项目编号
*/
private String projectNumber;
/**
* 项目名称
*/
private String projectName;
/**
* 项目简称
*/
private String projectAbbreviation;
/**
* 项目类型
*/
private Long projectType;
/**
* 项目状态
*/
private String projectStatus;
/**
* 计划开工日期
*/
private Date plannedStartDate;
/**
* 计划竣工日期
*/
private Date plannedCompletionDate;
/**
* 实际开工日期
*/
private Date actualStartDate;
/**
* 实际竣工日期
*/
private Date actualCompletionDate;
/**
* 管理组织
*/
private String managementOrganization;
/**
* 项目金额
*/
private Long projectAmount;
/**
* 项目备案经理
*/
private Long filingManager;
/**
* 项目执行经理
*/
private Long managerExecution;
/**
* 项目责任人
*/
private Long managerResponsible;
/**
* 项目中标金额
*/
private Long winningBidAmount;
/**
* 计划工期
*/
private Long plannedDuration;
/**
* 实际工期
*/
private Long actualDuration;
/**
* 默认财务组织
*/
private String defaultFinancialOrganization;
/**
* 承包方式
*/
private String contractingMethod;
/**
* 涉及财务组织
*/
private String involvedFinancialOrganization;
/**
* 经营模式
*/
private String businessModel;
/**
* 建设单位
*/
private String constructionUnit;
/**
* 项目属性
*/
private String projectAttribute;
/**
* 集团项目
*/
private String groupProject;
/**
* 说明
*/
private String description;
/**
* 立项日期
*/
private Date projectEstablishmentDate;
/**
* 计划总投资
*/
private Long plannedTotalInvestment;
/**
* 政府备案项目名称
*/
private String govFilingProjectName;
/**
* 项目执行经理电话
*/
private String managerExecutionPhone;
/**
* 共享组织
*/
private String sharingOrganization;
/**
* 目标中标金额
*/
private Long targetWinningBidAmount;
/**
* 目标合同金额
*/
private Long targetContractAmount;
/**
* 目标产值金额
*/
private Long targetOutputValueAmount;
/**
* 目标收款金额
*/
private Long targetCollectionAmount;
/**
* 文件ID
*/
private String fileId;
/**
* 备注
*/
private String remark;
/**
* 审核状态
*/
private String auditStatus;
}

View File

@ -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_project_accounting_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_accounting_info")
public class XzdProjectAccountingInfo extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 填报模式
*/
private String fillMode;
/**
* 承包合同启用工程量清单模式控制
*/
private String boqMode;
/**
* 工程量清单管控到定额子目
*/
private String boqControlSubitem;
/**
* 是否启用成本测算
*/
private String costCalculation;
}

View File

@ -0,0 +1,46 @@
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_project_internal_accounts
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_internal_accounts")
public class XzdProjectInternalAccounts extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 内部资金账户编码
*/
private String accountCode;
/**
* 内部资金账户名称
*/
private String accountName;
}

View File

@ -0,0 +1,51 @@
package org.dromara.xzd.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 项目信息-参建单位对象 xzd_project_participating_units
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_participating_units")
public class XzdProjectParticipatingUnits extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 单位性质
*/
private String unitType;
/**
* 单位名称
*/
private String unitName;
/**
* 投资总额
*/
private Long totalInvestment;
}

View File

@ -0,0 +1,116 @@
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_project_personnel
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_personnel")
public class XzdProjectPersonnel extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 员工号
*/
private String employeeId;
/**
* 人员姓名
*/
private String employeeName;
/**
* 性别
*/
private String gender;
/**
* 项目角色
*/
private String projectRole;
/**
* 项目岗位
*/
private String projectPost;
/**
* 备案岗位
*/
private String archivalPost;
/**
* 部门
*/
private String dept;
/**
* 手机
*/
private String mobilePhone;
/**
* 身份证
*/
private String idCardNumber;
/**
* 员工证书编号
*/
private String certificateNumber;
/**
* 员工证书名称
*/
private String certificateName;
/**
* 发证机关
*/
private String issuingAuthority;
/**
* 调离标志
*/
private String isSummaryFlag;
/**
* 是否发薪
*/
private String isSalaryPaid;
/**
* 组织
*/
private String organization;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,111 @@
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_project_profile
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_profile")
public class XzdProjectProfile extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 国家
*/
private String country;
/**
* 省
*/
private String province;
/**
* 城市
*/
private String city;
/**
* 区县
*/
private String district;
/**
* 项目地址
*/
private String projectAddress;
/**
* 建筑面积
*/
private Long buildingArea;
/**
* 建筑面积单位
*/
private String buildingAreaUnit;
/**
* 层数
*/
private Long floorCount;
/**
* 高度(米)
*/
private Long height;
/**
* 所属父级项目
*/
private Long parentProjectId;
/**
* 合同金额
*/
private Long contractAmount;
/**
* 质量评价等级
*/
private String qualityEvaluationGrade;
/**
* 安全生产等级
*/
private String safetyProductionGrade;
/**
* 工程合同备案号
*/
private String projectContractRecordNumber;
/**
* 项目概括
*/
private String projectProfile;
}

View File

@ -0,0 +1,101 @@
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_project_tax_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_tax_info")
public class XzdProjectTaxInfo extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 计征方式
*/
private String taxLevyMethod;
/**
* 计征区域
*/
private String taxLevyArea;
/**
* 预征率
*/
private Long advanceLevyRate;
/**
* 预缴税务机构
*/
private String prepayTaxOrganization;
/**
* 税务机构
*/
private String taxOrganization;
/**
* 开具发票类型
*/
private String invoiceTypeIssued;
/**
* 收票邮箱账号
*/
private String receivingEmailAccount;
/**
* 收票邮箱密码
*/
private String receivingEmailPassword;
/**
* 房地产项目
*/
private String isRealtyProject;
/**
* 累计开票
*/
private Long cumulativeInvoicing;
/**
* 累计销项税额
*/
private Long cumulativeOutputTaxAmount;
/**
* 已抵扣进项
*/
private Long alreadyDeducted;
/**
* 应缴纳增值税
*/
private Long valueAddTax;
}

View File

@ -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_project_warehouses
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("xzd_project_warehouses")
public class XzdProjectWarehouses extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@TableId(value = "id")
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 编号
*/
private String warehouseCode;
/**
* 仓库名称
*/
private String warehouseName;
/**
* 是否默认
*/
private String isDefault;
/**
* 备注
*/
private String remark;
}

View File

@ -0,0 +1,54 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectAccountingInfo;
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_project_accounting_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectAccountingInfo.class, reverseConvertGenerate = false)
public class XzdProjectAccountingInfoBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 填报模式
*/
private String fillMode;
/**
* 承包合同启用工程量清单模式控制
*/
private String boqMode;
/**
* 工程量清单管控到定额子目
*/
private String boqControlSubitem;
/**
* 是否启用成本测算
*/
private String costCalculation;
}

View File

@ -0,0 +1,266 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProject;
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;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo;
import org.dromara.xzd.domain.vo.XzdProjectProfileVo;
import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo;
import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo;
/**
* 项目信息业务对象 xzd_project
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProject.class, reverseConvertGenerate = false)
public class XzdProjectBo extends BaseEntity {
/**
* 主键ID
*/
private Long id;
/**
* 项目编号
*/
@NotBlank(message = "项目编号不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectNumber;
/**
* 项目名称
*/
@NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectName;
/**
* 项目简称
*/
private String projectAbbreviation;
/**
* 项目类型
*/
@NotNull(message = "项目类型不能为空", groups = { AddGroup.class, EditGroup.class })
private Long projectType;
/**
* 项目状态
*/
@NotBlank(message = "项目状态不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectStatus;
/**
* 计划开工日期
*/
private Date plannedStartDate;
/**
* 计划竣工日期
*/
private Date plannedCompletionDate;
/**
* 实际开工日期
*/
private Date actualStartDate;
/**
* 实际竣工日期
*/
private Date actualCompletionDate;
/**
* 管理组织
*/
private String managementOrganization;
/**
* 项目金额
*/
private Long projectAmount;
/**
* 项目备案经理
*/
private Long filingManager;
/**
* 项目执行经理
*/
private Long managerExecution;
/**
* 项目责任人
*/
private Long managerResponsible;
/**
* 项目中标金额
*/
private Long winningBidAmount;
/**
* 计划工期
*/
private Long plannedDuration;
/**
* 实际工期
*/
private Long actualDuration;
/**
* 默认财务组织
*/
private String defaultFinancialOrganization;
/**
* 承包方式
*/
private String contractingMethod;
/**
* 涉及财务组织
*/
private String involvedFinancialOrganization;
/**
* 经营模式
*/
private String businessModel;
/**
* 建设单位
*/
@NotBlank(message = "建设单位不能为空", groups = { AddGroup.class, EditGroup.class })
private String constructionUnit;
/**
* 项目属性
*/
private String projectAttribute;
/**
* 集团项目
*/
private String groupProject;
/**
* 说明
*/
private String description;
/**
* 立项日期
*/
private Date projectEstablishmentDate;
/**
* 计划总投资
*/
private Long plannedTotalInvestment;
/**
* 政府备案项目名称
*/
@NotBlank(message = "政府备案项目名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String govFilingProjectName;
/**
* 项目执行经理电话
*/
private String managerExecutionPhone;
/**
* 共享组织
*/
private String sharingOrganization;
/**
* 目标中标金额
*/
private Long targetWinningBidAmount;
/**
* 目标合同金额
*/
private Long targetContractAmount;
/**
* 目标产值金额
*/
private Long targetOutputValueAmount;
/**
* 目标收款金额
*/
private Long targetCollectionAmount;
/**
* 文件ID
*/
private String fileId;
/**
* 备注
*/
private String remark;
/**
* 审核状态
*/
private String auditStatus;
//工程建设新增
/**
* 项目概况
*/
XzdProjectProfileBo xmgk;
/**
* 项目人员
*/
List<XzdProjectPersonnelBo> xmry;
/**
* 税务信息
*/
XzdProjectTaxInfoBo swxx;
/**
* 核算信息
*/
XzdProjectAccountingInfoBo hsxx;
/**
* 项目仓库
*/
List<XzdProjectWarehousesBo> xmck;
/**
* 内部资金
*/
List<XzdProjectInternalAccountsBo> nbzj;
/**
* 参建单位
*/
List<XzdProjectParticipatingUnitsBo> cjdw;
}

View File

@ -0,0 +1,44 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
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_project_internal_accounts
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectInternalAccounts.class, reverseConvertGenerate = false)
public class XzdProjectInternalAccountsBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 内部资金账户编码
*/
private String accountCode;
/**
* 内部资金账户名称
*/
private String accountName;
}

View File

@ -0,0 +1,49 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectParticipatingUnits;
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_project_participating_units
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectParticipatingUnits.class, reverseConvertGenerate = false)
public class XzdProjectParticipatingUnitsBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 单位性质
*/
private String unitType;
/**
* 单位名称
*/
private String unitName;
/**
* 投资总额
*/
private Long totalInvestment;
}

View File

@ -0,0 +1,115 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectPersonnel;
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_project_personnel
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectPersonnel.class, reverseConvertGenerate = false)
public class XzdProjectPersonnelBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 员工号
*/
private String employeeId;
/**
* 人员姓名
*/
private String employeeName;
/**
* 性别
*/
private String gender;
/**
* 项目角色
*/
@NotBlank(message = "项目角色不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectRole;
/**
* 项目岗位
*/
private String projectPost;
/**
* 备案岗位
*/
private String archivalPost;
/**
* 部门
*/
private String dept;
/**
* 手机
*/
private String mobilePhone;
/**
* 身份证
*/
private String idCardNumber;
/**
* 员工证书编号
*/
private String certificateNumber;
/**
* 员工证书名称
*/
private String certificateName;
/**
* 发证机关
*/
private String issuingAuthority;
/**
* 调离标志
*/
private String isSummaryFlag;
/**
* 是否发薪
*/
private String isSalaryPaid;
/**
* 组织
*/
private String organization;
/**
* 文件ID
*/
private String fileId;
}

View File

@ -0,0 +1,111 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectProfile;
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_project_profile
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectProfile.class, reverseConvertGenerate = false)
public class XzdProjectProfileBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 国家
*/
@NotBlank(message = "国家不能为空", groups = { AddGroup.class, EditGroup.class })
private String country;
/**
* 省
*/
private String province;
/**
* 城市
*/
private String city;
/**
* 区县
*/
private String district;
/**
* 项目地址
*/
@NotBlank(message = "项目地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectAddress;
/**
* 建筑面积
*/
private Long buildingArea;
/**
* 建筑面积单位
*/
private String buildingAreaUnit;
/**
* 层数
*/
private Long floorCount;
/**
* 高度(米)
*/
private Long height;
/**
* 所属父级项目
*/
private Long parentProjectId;
/**
* 合同金额
*/
private Long contractAmount;
/**
* 质量评价等级
*/
private String qualityEvaluationGrade;
/**
* 安全生产等级
*/
private String safetyProductionGrade;
/**
* 工程合同备案号
*/
private String projectContractRecordNumber;
/**
* 项目概括
*/
private String projectProfile;
}

View File

@ -0,0 +1,99 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectTaxInfo;
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_project_tax_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectTaxInfo.class, reverseConvertGenerate = false)
public class XzdProjectTaxInfoBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 计征方式
*/
private String taxLevyMethod;
/**
* 计征区域
*/
private String taxLevyArea;
/**
* 预征率
*/
private Long advanceLevyRate;
/**
* 预缴税务机构
*/
private String prepayTaxOrganization;
/**
* 税务机构
*/
private String taxOrganization;
/**
* 开具发票类型
*/
private String invoiceTypeIssued;
/**
* 收票邮箱账号
*/
private String receivingEmailAccount;
/**
* 收票邮箱密码
*/
private String receivingEmailPassword;
/**
* 房地产项目
*/
private String isRealtyProject;
/**
* 累计开票
*/
private Long cumulativeInvoicing;
/**
* 累计销项税额
*/
private Long cumulativeOutputTaxAmount;
/**
* 已抵扣进项
*/
private Long alreadyDeducted;
/**
* 应缴纳增值税
*/
private Long valueAddTax;
}

View File

@ -0,0 +1,54 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdProjectWarehouses;
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_project_warehouses
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = XzdProjectWarehouses.class, reverseConvertGenerate = false)
public class XzdProjectWarehousesBo extends BaseEntity {
/**
* 唯一ID
*/
private Long id;
/**
* 关联的项目表ID
*/
private Long xzdProjectId;
/**
* 编号
*/
private String warehouseCode;
/**
* 仓库名称
*/
private String warehouseName;
/**
* 是否默认
*/
private String isDefault;
/**
* 备注
*/
private String remark;
}

View File

@ -0,0 +1,68 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectAccountingInfo;
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.Date;
/**
* 项目信息-核算信息视图对象 xzd_project_accounting_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectAccountingInfo.class)
public class XzdProjectAccountingInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 填报模式
*/
@ExcelProperty(value = "填报模式")
private String fillMode;
/**
* 承包合同启用工程量清单模式控制
*/
@ExcelProperty(value = "承包合同启用工程量清单模式控制")
private String boqMode;
/**
* 工程量清单管控到定额子目
*/
@ExcelProperty(value = "工程量清单管控到定额子目")
private String boqControlSubitem;
/**
* 是否启用成本测算
*/
@ExcelProperty(value = "是否启用成本测算")
private String costCalculation;
}

View File

@ -0,0 +1,56 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
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.Date;
/**
* 项目信息-内部资金账户视图对象 xzd_project_internal_accounts
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectInternalAccounts.class)
public class XzdProjectInternalAccountsVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 内部资金账户编码
*/
@ExcelProperty(value = "内部资金账户编码")
private String accountCode;
/**
* 内部资金账户名称
*/
@ExcelProperty(value = "内部资金账户名称")
private String accountName;
}

View File

@ -0,0 +1,62 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectParticipatingUnits;
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.Date;
/**
* 项目信息-参建单位视图对象 xzd_project_participating_units
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectParticipatingUnits.class)
public class XzdProjectParticipatingUnitsVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 单位性质
*/
@ExcelProperty(value = "单位性质")
private String unitType;
/**
* 单位名称
*/
@ExcelProperty(value = "单位名称")
private String unitName;
/**
* 投资总额
*/
@ExcelProperty(value = "投资总额")
private Long totalInvestment;
}

View File

@ -0,0 +1,140 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectPersonnel;
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.Date;
/**
* 项目信息-项目人员视图对象 xzd_project_personnel
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectPersonnel.class)
public class XzdProjectPersonnelVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 员工号
*/
@ExcelProperty(value = "员工号")
private String employeeId;
/**
* 人员姓名
*/
@ExcelProperty(value = "人员姓名")
private String employeeName;
/**
* 性别
*/
@ExcelProperty(value = "性别")
private String gender;
/**
* 项目角色
*/
@ExcelProperty(value = "项目角色")
private String projectRole;
/**
* 项目岗位
*/
@ExcelProperty(value = "项目岗位")
private String projectPost;
/**
* 备案岗位
*/
@ExcelProperty(value = "备案岗位")
private String archivalPost;
/**
* 部门
*/
@ExcelProperty(value = "部门")
private String dept;
/**
* 手机
*/
@ExcelProperty(value = "手机")
private String mobilePhone;
/**
* 身份证
*/
@ExcelProperty(value = "身份证")
private String idCardNumber;
/**
* 员工证书编号
*/
@ExcelProperty(value = "员工证书编号")
private String certificateNumber;
/**
* 员工证书名称
*/
@ExcelProperty(value = "员工证书名称")
private String certificateName;
/**
* 发证机关
*/
@ExcelProperty(value = "发证机关")
private String issuingAuthority;
/**
* 调离标志
*/
@ExcelProperty(value = "调离标志")
private String isSummaryFlag;
/**
* 是否发薪
*/
@ExcelProperty(value = "是否发薪")
private String isSalaryPaid;
/**
* 组织
*/
@ExcelProperty(value = "组织")
private String organization;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
}

View File

@ -0,0 +1,134 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectProfile;
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.Date;
/**
* 项目信息-项目概况视图对象 xzd_project_profile
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectProfile.class)
public class XzdProjectProfileVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 国家
*/
@ExcelProperty(value = "国家")
private String country;
/**
* 省
*/
@ExcelProperty(value = "")
private String province;
/**
* 城市
*/
@ExcelProperty(value = "城市")
private String city;
/**
* 区县
*/
@ExcelProperty(value = "区县")
private String district;
/**
* 项目地址
*/
@ExcelProperty(value = "项目地址")
private String projectAddress;
/**
* 建筑面积
*/
@ExcelProperty(value = "建筑面积")
private Long buildingArea;
/**
* 建筑面积单位
*/
@ExcelProperty(value = "建筑面积单位")
private String buildingAreaUnit;
/**
* 层数
*/
@ExcelProperty(value = "层数")
private Long floorCount;
/**
* 高度(米)
*/
@ExcelProperty(value = "高度(米)")
private Long height;
/**
* 所属父级项目
*/
@ExcelProperty(value = "所属父级项目")
private Long parentProjectId;
/**
* 合同金额
*/
@ExcelProperty(value = "合同金额")
private Long contractAmount;
/**
* 质量评价等级
*/
@ExcelProperty(value = "质量评价等级")
private String qualityEvaluationGrade;
/**
* 安全生产等级
*/
@ExcelProperty(value = "安全生产等级")
private String safetyProductionGrade;
/**
* 工程合同备案号
*/
@ExcelProperty(value = "工程合同备案号")
private String projectContractRecordNumber;
/**
* 项目概括
*/
@ExcelProperty(value = "项目概括")
private String projectProfile;
}

View File

@ -0,0 +1,122 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectTaxInfo;
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.Date;
/**
* 项目信息-税务信息视图对象 xzd_project_tax_info
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectTaxInfo.class)
public class XzdProjectTaxInfoVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 计征方式
*/
@ExcelProperty(value = "计征方式")
private String taxLevyMethod;
/**
* 计征区域
*/
@ExcelProperty(value = "计征区域")
private String taxLevyArea;
/**
* 预征率
*/
@ExcelProperty(value = "预征率")
private Long advanceLevyRate;
/**
* 预缴税务机构
*/
@ExcelProperty(value = "预缴税务机构")
private String prepayTaxOrganization;
/**
* 税务机构
*/
@ExcelProperty(value = "税务机构")
private String taxOrganization;
/**
* 开具发票类型
*/
@ExcelProperty(value = "开具发票类型")
private String invoiceTypeIssued;
/**
* 收票邮箱账号
*/
@ExcelProperty(value = "收票邮箱账号")
private String receivingEmailAccount;
/**
* 收票邮箱密码
*/
@ExcelProperty(value = "收票邮箱密码")
private String receivingEmailPassword;
/**
* 房地产项目
*/
@ExcelProperty(value = "房地产项目")
private String isRealtyProject;
/**
* 累计开票
*/
@ExcelProperty(value = "累计开票")
private Long cumulativeInvoicing;
/**
* 累计销项税额
*/
@ExcelProperty(value = "累计销项税额")
private Long cumulativeOutputTaxAmount;
/**
* 已抵扣进项
*/
@ExcelProperty(value = "已抵扣进项")
private Long alreadyDeducted;
/**
* 应缴纳增值税
*/
@ExcelProperty(value = "应缴纳增值税")
private Long valueAddTax;
}

View File

@ -0,0 +1,297 @@
package org.dromara.xzd.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.xzd.domain.XzdProject;
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 org.dromara.xzd.domain.bo.*;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 项目信息视图对象 xzd_project
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProject.class)
public class XzdProjectVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private Long id;
/**
* 项目编号
*/
@ExcelProperty(value = "项目编号")
private String projectNumber;
/**
* 项目名称
*/
@ExcelProperty(value = "项目名称")
private String projectName;
/**
* 项目简称
*/
@ExcelProperty(value = "项目简称")
private String projectAbbreviation;
/**
* 项目类型
*/
@ExcelProperty(value = "项目类型")
private Long projectType;
/**
* 项目状态
*/
@ExcelProperty(value = "项目状态")
private String projectStatus;
/**
* 计划开工日期
*/
@ExcelProperty(value = "计划开工日期")
private Date plannedStartDate;
/**
* 计划竣工日期
*/
@ExcelProperty(value = "计划竣工日期")
private Date plannedCompletionDate;
/**
* 实际开工日期
*/
@ExcelProperty(value = "实际开工日期")
private Date actualStartDate;
/**
* 实际竣工日期
*/
@ExcelProperty(value = "实际竣工日期")
private Date actualCompletionDate;
/**
* 管理组织
*/
@ExcelProperty(value = "管理组织")
private String managementOrganization;
/**
* 项目金额
*/
@ExcelProperty(value = "项目金额")
private Long projectAmount;
/**
* 项目备案经理
*/
@ExcelProperty(value = "项目备案经理")
private Long filingManager;
/**
* 项目执行经理
*/
@ExcelProperty(value = "项目执行经理")
private Long managerExecution;
/**
* 项目责任人
*/
@ExcelProperty(value = "项目责任人")
private Long managerResponsible;
/**
* 项目中标金额
*/
@ExcelProperty(value = "项目中标金额")
private Long winningBidAmount;
/**
* 计划工期
*/
@ExcelProperty(value = "计划工期")
private Long plannedDuration;
/**
* 实际工期
*/
@ExcelProperty(value = "实际工期")
private Long actualDuration;
/**
* 默认财务组织
*/
@ExcelProperty(value = "默认财务组织")
private String defaultFinancialOrganization;
/**
* 承包方式
*/
@ExcelProperty(value = "承包方式")
private String contractingMethod;
/**
* 涉及财务组织
*/
@ExcelProperty(value = "涉及财务组织")
private String involvedFinancialOrganization;
/**
* 经营模式
*/
@ExcelProperty(value = "经营模式")
private String businessModel;
/**
* 建设单位
*/
@ExcelProperty(value = "建设单位")
private String constructionUnit;
/**
* 项目属性
*/
@ExcelProperty(value = "项目属性")
private String projectAttribute;
/**
* 集团项目
*/
@ExcelProperty(value = "集团项目")
private String groupProject;
/**
* 说明
*/
@ExcelProperty(value = "说明")
private String description;
/**
* 立项日期
*/
@ExcelProperty(value = "立项日期")
private Date projectEstablishmentDate;
/**
* 计划总投资
*/
@ExcelProperty(value = "计划总投资")
private Long plannedTotalInvestment;
/**
* 政府备案项目名称
*/
@ExcelProperty(value = "政府备案项目名称")
private String govFilingProjectName;
/**
* 项目执行经理电话
*/
@ExcelProperty(value = "项目执行经理电话")
private String managerExecutionPhone;
/**
* 共享组织
*/
@ExcelProperty(value = "共享组织")
private String sharingOrganization;
/**
* 目标中标金额
*/
@ExcelProperty(value = "目标中标金额")
private Long targetWinningBidAmount;
/**
* 目标合同金额
*/
@ExcelProperty(value = "目标合同金额")
private Long targetContractAmount;
/**
* 目标产值金额
*/
@ExcelProperty(value = "目标产值金额")
private Long targetOutputValueAmount;
/**
* 目标收款金额
*/
@ExcelProperty(value = "目标收款金额")
private Long targetCollectionAmount;
/**
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private String fileId;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
/**
* 审核状态
*/
@ExcelProperty(value = "审核状态")
private String auditStatus;
/**
* 项目概况
*/
XzdProjectProfileVo xmgk;
/**
* 项目人员
*/
List<XzdProjectPersonnelVo> xmry;
/**
* 税务信息
*/
XzdProjectTaxInfoVo swxx;
/**
* 核算信息
*/
XzdProjectAccountingInfoVo hsxx;
/**
* 项目仓库
*/
List<XzdProjectWarehousesVo> xmck;
/**
* 内部资金
*/
List<XzdProjectInternalAccountsVo> nbzj;
/**
* 参建单位
*/
List<XzdProjectParticipatingUnitsVo> cjdw;
}

View File

@ -0,0 +1,68 @@
package org.dromara.xzd.domain.vo;
import org.dromara.xzd.domain.XzdProjectWarehouses;
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.Date;
/**
* 项目信息-项目仓库视图对象 xzd_project_warehouses
*
* @author Lion Li
* @date 2025-10-10
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = XzdProjectWarehouses.class)
public class XzdProjectWarehousesVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 唯一ID
*/
@ExcelProperty(value = "唯一ID")
private Long id;
/**
* 关联的项目表ID
*/
@ExcelProperty(value = "关联的项目表ID")
private Long xzdProjectId;
/**
* 编号
*/
@ExcelProperty(value = "编号")
private String warehouseCode;
/**
* 仓库名称
*/
@ExcelProperty(value = "仓库名称")
private String warehouseName;
/**
* 是否默认
*/
@ExcelProperty(value = "是否默认")
private String isDefault;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectAccountingInfo;
import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-核算信息Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectAccountingInfoMapper extends BaseMapperPlus<XzdProjectAccountingInfo, XzdProjectAccountingInfoVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-内部资金账户Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectInternalAccountsMapper extends BaseMapperPlus<XzdProjectInternalAccounts, XzdProjectInternalAccountsVo> {
}

View File

@ -1,15 +1,15 @@
package org.dromara.xzd.mapper;
//import org.dromara.xzd.domain.XzdProject;
//import org.dromara.xzd.domain.vo.XzdProjectVo;
//import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
//
///**
// * 项目信息Mapper接口
// *
// * @author Lion Li
// * @date 2025-10-10
// */
//public interface XzdProjectMapper extends BaseMapperPlus<XzdProject, XzdProjectVo> {
//
//}
import org.dromara.xzd.domain.XzdProject;
import org.dromara.xzd.domain.vo.XzdProjectVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectMapper extends BaseMapperPlus<XzdProject, XzdProjectVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectParticipatingUnits;
import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-参建单位Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectParticipatingUnitsMapper extends BaseMapperPlus<XzdProjectParticipatingUnits, XzdProjectParticipatingUnitsVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectPersonnel;
import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-项目人员Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectPersonnelMapper extends BaseMapperPlus<XzdProjectPersonnel, XzdProjectPersonnelVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectProfile;
import org.dromara.xzd.domain.vo.XzdProjectProfileVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-项目概况Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectProfileMapper extends BaseMapperPlus<XzdProjectProfile, XzdProjectProfileVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectTaxInfo;
import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-税务信息Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectTaxInfoMapper extends BaseMapperPlus<XzdProjectTaxInfo, XzdProjectTaxInfoVo> {
}

View File

@ -0,0 +1,15 @@
package org.dromara.xzd.mapper;
import org.dromara.xzd.domain.XzdProjectWarehouses;
import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/**
* 项目信息-项目仓库Mapper接口
*
* @author Lion Li
* @date 2025-10-10
*/
public interface XzdProjectWarehousesMapper extends BaseMapperPlus<XzdProjectWarehouses, XzdProjectWarehousesVo> {
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo;
import org.dromara.xzd.domain.bo.XzdProjectAccountingInfoBo;
import org.dromara.xzd.domain.XzdProjectAccountingInfo;
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-10
*/
public interface IXzdProjectAccountingInfoService extends IService<XzdProjectAccountingInfo>{
/**
* 查询项目信息-核算信息
*
* @param id 主键
* @return 项目信息-核算信息
*/
XzdProjectAccountingInfoVo queryById(Long id);
/**
* 分页查询项目信息-核算信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-核算信息分页列表
*/
TableDataInfo<XzdProjectAccountingInfoVo> queryPageList(XzdProjectAccountingInfoBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-核算信息列表
*
* @param bo 查询条件
* @return 项目信息-核算信息列表
*/
List<XzdProjectAccountingInfoVo> queryList(XzdProjectAccountingInfoBo bo);
/**
* 新增项目信息-核算信息
*
* @param bo 项目信息-核算信息
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectAccountingInfoBo bo);
/**
* 修改项目信息-核算信息
*
* @param bo 项目信息-核算信息
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectAccountingInfoBo bo);
/**
* 校验并批量删除项目信息-核算信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo;
import org.dromara.xzd.domain.bo.XzdProjectInternalAccountsBo;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
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-10
*/
public interface IXzdProjectInternalAccountsService extends IService<XzdProjectInternalAccounts>{
/**
* 查询项目信息-内部资金账户
*
* @param id 主键
* @return 项目信息-内部资金账户
*/
XzdProjectInternalAccountsVo queryById(Long id);
/**
* 分页查询项目信息-内部资金账户列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-内部资金账户分页列表
*/
TableDataInfo<XzdProjectInternalAccountsVo> queryPageList(XzdProjectInternalAccountsBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-内部资金账户列表
*
* @param bo 查询条件
* @return 项目信息-内部资金账户列表
*/
List<XzdProjectInternalAccountsVo> queryList(XzdProjectInternalAccountsBo bo);
/**
* 新增项目信息-内部资金账户
*
* @param bo 项目信息-内部资金账户
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectInternalAccountsBo bo);
/**
* 修改项目信息-内部资金账户
*
* @param bo 项目信息-内部资金账户
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectInternalAccountsBo bo);
/**
* 校验并批量删除项目信息-内部资金账户信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo;
import org.dromara.xzd.domain.bo.XzdProjectParticipatingUnitsBo;
import org.dromara.xzd.domain.XzdProjectParticipatingUnits;
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-10
*/
public interface IXzdProjectParticipatingUnitsService extends IService<XzdProjectParticipatingUnits>{
/**
* 查询项目信息-参建单位
*
* @param id 主键
* @return 项目信息-参建单位
*/
XzdProjectParticipatingUnitsVo queryById(Long id);
/**
* 分页查询项目信息-参建单位列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-参建单位分页列表
*/
TableDataInfo<XzdProjectParticipatingUnitsVo> queryPageList(XzdProjectParticipatingUnitsBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-参建单位列表
*
* @param bo 查询条件
* @return 项目信息-参建单位列表
*/
List<XzdProjectParticipatingUnitsVo> queryList(XzdProjectParticipatingUnitsBo bo);
/**
* 新增项目信息-参建单位
*
* @param bo 项目信息-参建单位
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectParticipatingUnitsBo bo);
/**
* 修改项目信息-参建单位
*
* @param bo 项目信息-参建单位
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectParticipatingUnitsBo bo);
/**
* 校验并批量删除项目信息-参建单位信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo;
import org.dromara.xzd.domain.bo.XzdProjectPersonnelBo;
import org.dromara.xzd.domain.XzdProjectPersonnel;
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-10
*/
public interface IXzdProjectPersonnelService extends IService<XzdProjectPersonnel>{
/**
* 查询项目信息-项目人员
*
* @param id 主键
* @return 项目信息-项目人员
*/
XzdProjectPersonnelVo queryById(Long id);
/**
* 分页查询项目信息-项目人员列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目人员分页列表
*/
TableDataInfo<XzdProjectPersonnelVo> queryPageList(XzdProjectPersonnelBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-项目人员列表
*
* @param bo 查询条件
* @return 项目信息-项目人员列表
*/
List<XzdProjectPersonnelVo> queryList(XzdProjectPersonnelBo bo);
/**
* 新增项目信息-项目人员
*
* @param bo 项目信息-项目人员
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectPersonnelBo bo);
/**
* 修改项目信息-项目人员
*
* @param bo 项目信息-项目人员
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectPersonnelBo bo);
/**
* 校验并批量删除项目信息-项目人员信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectProfileVo;
import org.dromara.xzd.domain.bo.XzdProjectProfileBo;
import org.dromara.xzd.domain.XzdProjectProfile;
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-10
*/
public interface IXzdProjectProfileService extends IService<XzdProjectProfile>{
/**
* 查询项目信息-项目概况
*
* @param id 主键
* @return 项目信息-项目概况
*/
XzdProjectProfileVo queryById(Long id);
/**
* 分页查询项目信息-项目概况列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目概况分页列表
*/
TableDataInfo<XzdProjectProfileVo> queryPageList(XzdProjectProfileBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-项目概况列表
*
* @param bo 查询条件
* @return 项目信息-项目概况列表
*/
List<XzdProjectProfileVo> queryList(XzdProjectProfileBo bo);
/**
* 新增项目信息-项目概况
*
* @param bo 项目信息-项目概况
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectProfileBo bo);
/**
* 修改项目信息-项目概况
*
* @param bo 项目信息-项目概况
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectProfileBo bo);
/**
* 校验并批量删除项目信息-项目概况信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectVo;
import org.dromara.xzd.domain.bo.XzdProjectBo;
import org.dromara.xzd.domain.XzdProject;
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-10
*/
public interface IXzdProjectService extends IService<XzdProject>{
/**
* 查询项目信息
*
* @param id 主键
* @return 项目信息
*/
XzdProjectVo queryById(Long id);
/**
* 分页查询项目信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息分页列表
*/
TableDataInfo<XzdProjectVo> queryPageList(XzdProjectBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息列表
*
* @param bo 查询条件
* @return 项目信息列表
*/
List<XzdProjectVo> queryList(XzdProjectBo bo);
/**
* 新增项目信息
*
* @param bo 项目信息
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectBo bo);
/**
* 修改项目信息
*
* @param bo 项目信息
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectBo bo);
/**
* 校验并批量删除项目信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo;
import org.dromara.xzd.domain.bo.XzdProjectTaxInfoBo;
import org.dromara.xzd.domain.XzdProjectTaxInfo;
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-10
*/
public interface IXzdProjectTaxInfoService extends IService<XzdProjectTaxInfo>{
/**
* 查询项目信息-税务信息
*
* @param id 主键
* @return 项目信息-税务信息
*/
XzdProjectTaxInfoVo queryById(Long id);
/**
* 分页查询项目信息-税务信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-税务信息分页列表
*/
TableDataInfo<XzdProjectTaxInfoVo> queryPageList(XzdProjectTaxInfoBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-税务信息列表
*
* @param bo 查询条件
* @return 项目信息-税务信息列表
*/
List<XzdProjectTaxInfoVo> queryList(XzdProjectTaxInfoBo bo);
/**
* 新增项目信息-税务信息
*
* @param bo 项目信息-税务信息
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectTaxInfoBo bo);
/**
* 修改项目信息-税务信息
*
* @param bo 项目信息-税务信息
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectTaxInfoBo bo);
/**
* 校验并批量删除项目信息-税务信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,70 @@
package org.dromara.xzd.service;
import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo;
import org.dromara.xzd.domain.bo.XzdProjectWarehousesBo;
import org.dromara.xzd.domain.XzdProjectWarehouses;
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-10
*/
public interface IXzdProjectWarehousesService extends IService<XzdProjectWarehouses>{
/**
* 查询项目信息-项目仓库
*
* @param id 主键
* @return 项目信息-项目仓库
*/
XzdProjectWarehousesVo queryById(Long id);
/**
* 分页查询项目信息-项目仓库列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目仓库分页列表
*/
TableDataInfo<XzdProjectWarehousesVo> queryPageList(XzdProjectWarehousesBo bo, PageQuery pageQuery);
/**
* 查询符合条件的项目信息-项目仓库列表
*
* @param bo 查询条件
* @return 项目信息-项目仓库列表
*/
List<XzdProjectWarehousesVo> queryList(XzdProjectWarehousesBo bo);
/**
* 新增项目信息-项目仓库
*
* @param bo 项目信息-项目仓库
* @return 是否新增成功
*/
Boolean insertByBo(XzdProjectWarehousesBo bo);
/**
* 修改项目信息-项目仓库
*
* @param bo 项目信息-项目仓库
* @return 是否修改成功
*/
Boolean updateByBo(XzdProjectWarehousesBo bo);
/**
* 校验并批量删除项目信息-项目仓库信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -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.XzdProjectAccountingInfoBo;
import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo;
import org.dromara.xzd.domain.XzdProjectAccountingInfo;
import org.dromara.xzd.mapper.XzdProjectAccountingInfoMapper;
import org.dromara.xzd.service.IXzdProjectAccountingInfoService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-核算信息Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectAccountingInfoServiceImpl extends ServiceImpl<XzdProjectAccountingInfoMapper, XzdProjectAccountingInfo> implements IXzdProjectAccountingInfoService {
private final XzdProjectAccountingInfoMapper baseMapper;
/**
* 查询项目信息-核算信息
*
* @param id 主键
* @return 项目信息-核算信息
*/
@Override
public XzdProjectAccountingInfoVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-核算信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-核算信息分页列表
*/
@Override
public TableDataInfo<XzdProjectAccountingInfoVo> queryPageList(XzdProjectAccountingInfoBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectAccountingInfo> lqw = buildQueryWrapper(bo);
Page<XzdProjectAccountingInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-核算信息列表
*
* @param bo 查询条件
* @return 项目信息-核算信息列表
*/
@Override
public List<XzdProjectAccountingInfoVo> queryList(XzdProjectAccountingInfoBo bo) {
LambdaQueryWrapper<XzdProjectAccountingInfo> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectAccountingInfo> buildQueryWrapper(XzdProjectAccountingInfoBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectAccountingInfo> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectAccountingInfo::getId);
lqw.eq(bo.getXzdProjectId() != null, XzdProjectAccountingInfo::getXzdProjectId, bo.getXzdProjectId());
lqw.eq(StringUtils.isNotBlank(bo.getFillMode()), XzdProjectAccountingInfo::getFillMode, bo.getFillMode());
lqw.eq(StringUtils.isNotBlank(bo.getBoqMode()), XzdProjectAccountingInfo::getBoqMode, bo.getBoqMode());
lqw.eq(StringUtils.isNotBlank(bo.getBoqControlSubitem()), XzdProjectAccountingInfo::getBoqControlSubitem, bo.getBoqControlSubitem());
lqw.eq(StringUtils.isNotBlank(bo.getCostCalculation()), XzdProjectAccountingInfo::getCostCalculation, bo.getCostCalculation());
return lqw;
}
/**
* 新增项目信息-核算信息
*
* @param bo 项目信息-核算信息
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectAccountingInfoBo bo) {
XzdProjectAccountingInfo add = MapstructUtils.convert(bo, XzdProjectAccountingInfo.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-核算信息
*
* @param bo 项目信息-核算信息
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectAccountingInfoBo bo) {
XzdProjectAccountingInfo update = MapstructUtils.convert(bo, XzdProjectAccountingInfo.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectAccountingInfo entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-核算信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,133 @@
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.XzdProjectInternalAccountsBo;
import org.dromara.xzd.domain.vo.XzdProjectInternalAccountsVo;
import org.dromara.xzd.domain.XzdProjectInternalAccounts;
import org.dromara.xzd.mapper.XzdProjectInternalAccountsMapper;
import org.dromara.xzd.service.IXzdProjectInternalAccountsService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-内部资金账户Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectInternalAccountsServiceImpl extends ServiceImpl<XzdProjectInternalAccountsMapper, XzdProjectInternalAccounts> implements IXzdProjectInternalAccountsService {
private final XzdProjectInternalAccountsMapper baseMapper;
/**
* 查询项目信息-内部资金账户
*
* @param id 主键
* @return 项目信息-内部资金账户
*/
@Override
public XzdProjectInternalAccountsVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-内部资金账户列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-内部资金账户分页列表
*/
@Override
public TableDataInfo<XzdProjectInternalAccountsVo> queryPageList(XzdProjectInternalAccountsBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectInternalAccounts> lqw = buildQueryWrapper(bo);
Page<XzdProjectInternalAccountsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-内部资金账户列表
*
* @param bo 查询条件
* @return 项目信息-内部资金账户列表
*/
@Override
public List<XzdProjectInternalAccountsVo> queryList(XzdProjectInternalAccountsBo bo) {
LambdaQueryWrapper<XzdProjectInternalAccounts> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectInternalAccounts> buildQueryWrapper(XzdProjectInternalAccountsBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectInternalAccounts> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectInternalAccounts::getId);
lqw.eq(bo.getXzdProjectId() != null, XzdProjectInternalAccounts::getXzdProjectId, bo.getXzdProjectId());
lqw.eq(StringUtils.isNotBlank(bo.getAccountCode()), XzdProjectInternalAccounts::getAccountCode, bo.getAccountCode());
lqw.like(StringUtils.isNotBlank(bo.getAccountName()), XzdProjectInternalAccounts::getAccountName, bo.getAccountName());
return lqw;
}
/**
* 新增项目信息-内部资金账户
*
* @param bo 项目信息-内部资金账户
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectInternalAccountsBo bo) {
XzdProjectInternalAccounts add = MapstructUtils.convert(bo, XzdProjectInternalAccounts.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-内部资金账户
*
* @param bo 项目信息-内部资金账户
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectInternalAccountsBo bo) {
XzdProjectInternalAccounts update = MapstructUtils.convert(bo, XzdProjectInternalAccounts.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectInternalAccounts entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-内部资金账户信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,134 @@
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.XzdProjectParticipatingUnitsBo;
import org.dromara.xzd.domain.vo.XzdProjectParticipatingUnitsVo;
import org.dromara.xzd.domain.XzdProjectParticipatingUnits;
import org.dromara.xzd.mapper.XzdProjectParticipatingUnitsMapper;
import org.dromara.xzd.service.IXzdProjectParticipatingUnitsService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-参建单位Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectParticipatingUnitsServiceImpl extends ServiceImpl<XzdProjectParticipatingUnitsMapper, XzdProjectParticipatingUnits> implements IXzdProjectParticipatingUnitsService {
private final XzdProjectParticipatingUnitsMapper baseMapper;
/**
* 查询项目信息-参建单位
*
* @param id 主键
* @return 项目信息-参建单位
*/
@Override
public XzdProjectParticipatingUnitsVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-参建单位列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-参建单位分页列表
*/
@Override
public TableDataInfo<XzdProjectParticipatingUnitsVo> queryPageList(XzdProjectParticipatingUnitsBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectParticipatingUnits> lqw = buildQueryWrapper(bo);
Page<XzdProjectParticipatingUnitsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-参建单位列表
*
* @param bo 查询条件
* @return 项目信息-参建单位列表
*/
@Override
public List<XzdProjectParticipatingUnitsVo> queryList(XzdProjectParticipatingUnitsBo bo) {
LambdaQueryWrapper<XzdProjectParticipatingUnits> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectParticipatingUnits> buildQueryWrapper(XzdProjectParticipatingUnitsBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectParticipatingUnits> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectParticipatingUnits::getId);
lqw.eq(bo.getXzdProjectId() != null, XzdProjectParticipatingUnits::getXzdProjectId, bo.getXzdProjectId());
lqw.eq(StringUtils.isNotBlank(bo.getUnitType()), XzdProjectParticipatingUnits::getUnitType, bo.getUnitType());
lqw.like(StringUtils.isNotBlank(bo.getUnitName()), XzdProjectParticipatingUnits::getUnitName, bo.getUnitName());
lqw.eq(bo.getTotalInvestment() != null, XzdProjectParticipatingUnits::getTotalInvestment, bo.getTotalInvestment());
return lqw;
}
/**
* 新增项目信息-参建单位
*
* @param bo 项目信息-参建单位
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectParticipatingUnitsBo bo) {
XzdProjectParticipatingUnits add = MapstructUtils.convert(bo, XzdProjectParticipatingUnits.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-参建单位
*
* @param bo 项目信息-参建单位
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectParticipatingUnitsBo bo) {
XzdProjectParticipatingUnits update = MapstructUtils.convert(bo, XzdProjectParticipatingUnits.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectParticipatingUnits entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-参建单位信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,147 @@
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.XzdProjectPersonnelBo;
import org.dromara.xzd.domain.vo.XzdProjectPersonnelVo;
import org.dromara.xzd.domain.XzdProjectPersonnel;
import org.dromara.xzd.mapper.XzdProjectPersonnelMapper;
import org.dromara.xzd.service.IXzdProjectPersonnelService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-项目人员Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectPersonnelServiceImpl extends ServiceImpl<XzdProjectPersonnelMapper, XzdProjectPersonnel> implements IXzdProjectPersonnelService {
private final XzdProjectPersonnelMapper baseMapper;
/**
* 查询项目信息-项目人员
*
* @param id 主键
* @return 项目信息-项目人员
*/
@Override
public XzdProjectPersonnelVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-项目人员列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目人员分页列表
*/
@Override
public TableDataInfo<XzdProjectPersonnelVo> queryPageList(XzdProjectPersonnelBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectPersonnel> lqw = buildQueryWrapper(bo);
Page<XzdProjectPersonnelVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-项目人员列表
*
* @param bo 查询条件
* @return 项目信息-项目人员列表
*/
@Override
public List<XzdProjectPersonnelVo> queryList(XzdProjectPersonnelBo bo) {
LambdaQueryWrapper<XzdProjectPersonnel> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectPersonnel> buildQueryWrapper(XzdProjectPersonnelBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectPersonnel> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectPersonnel::getId);
lqw.eq(bo.getXzdProjectId() != null, XzdProjectPersonnel::getXzdProjectId, bo.getXzdProjectId());
lqw.eq(StringUtils.isNotBlank(bo.getEmployeeId()), XzdProjectPersonnel::getEmployeeId, bo.getEmployeeId());
lqw.like(StringUtils.isNotBlank(bo.getEmployeeName()), XzdProjectPersonnel::getEmployeeName, bo.getEmployeeName());
lqw.eq(StringUtils.isNotBlank(bo.getGender()), XzdProjectPersonnel::getGender, bo.getGender());
lqw.eq(StringUtils.isNotBlank(bo.getProjectRole()), XzdProjectPersonnel::getProjectRole, bo.getProjectRole());
lqw.eq(StringUtils.isNotBlank(bo.getProjectPost()), XzdProjectPersonnel::getProjectPost, bo.getProjectPost());
lqw.eq(StringUtils.isNotBlank(bo.getArchivalPost()), XzdProjectPersonnel::getArchivalPost, bo.getArchivalPost());
lqw.eq(StringUtils.isNotBlank(bo.getDept()), XzdProjectPersonnel::getDept, bo.getDept());
lqw.eq(StringUtils.isNotBlank(bo.getMobilePhone()), XzdProjectPersonnel::getMobilePhone, bo.getMobilePhone());
lqw.eq(StringUtils.isNotBlank(bo.getIdCardNumber()), XzdProjectPersonnel::getIdCardNumber, bo.getIdCardNumber());
lqw.eq(StringUtils.isNotBlank(bo.getCertificateNumber()), XzdProjectPersonnel::getCertificateNumber, bo.getCertificateNumber());
lqw.like(StringUtils.isNotBlank(bo.getCertificateName()), XzdProjectPersonnel::getCertificateName, bo.getCertificateName());
lqw.eq(StringUtils.isNotBlank(bo.getIssuingAuthority()), XzdProjectPersonnel::getIssuingAuthority, bo.getIssuingAuthority());
lqw.eq(StringUtils.isNotBlank(bo.getIsSummaryFlag()), XzdProjectPersonnel::getIsSummaryFlag, bo.getIsSummaryFlag());
lqw.eq(StringUtils.isNotBlank(bo.getIsSalaryPaid()), XzdProjectPersonnel::getIsSalaryPaid, bo.getIsSalaryPaid());
lqw.eq(StringUtils.isNotBlank(bo.getOrganization()), XzdProjectPersonnel::getOrganization, bo.getOrganization());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdProjectPersonnel::getFileId, bo.getFileId());
return lqw;
}
/**
* 新增项目信息-项目人员
*
* @param bo 项目信息-项目人员
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectPersonnelBo bo) {
XzdProjectPersonnel add = MapstructUtils.convert(bo, XzdProjectPersonnel.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-项目人员
*
* @param bo 项目信息-项目人员
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectPersonnelBo bo) {
XzdProjectPersonnel update = MapstructUtils.convert(bo, XzdProjectPersonnel.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectPersonnel entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-项目人员信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,149 @@
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.XzdProjectProfileBo;
import org.dromara.xzd.domain.vo.XzdProjectProfileVo;
import org.dromara.xzd.domain.XzdProjectProfile;
import org.dromara.xzd.mapper.XzdProjectProfileMapper;
import org.dromara.xzd.service.IXzdProjectProfileService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-项目概况Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectProfileServiceImpl extends ServiceImpl<XzdProjectProfileMapper, XzdProjectProfile> implements IXzdProjectProfileService {
private final XzdProjectProfileMapper baseMapper;
/**
* 查询项目信息-项目概况
*
* @param id 主键
* @return 项目信息-项目概况
*/
@Override
public XzdProjectProfileVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-项目概况列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目概况分页列表
*/
@Override
public TableDataInfo<XzdProjectProfileVo> queryPageList(XzdProjectProfileBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectProfile> lqw = buildQueryWrapper(bo);
Page<XzdProjectProfileVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-项目概况列表
*
* @param bo 查询条件
* @return 项目信息-项目概况列表
*/
@Override
public List<XzdProjectProfileVo> queryList(XzdProjectProfileBo bo) {
LambdaQueryWrapper<XzdProjectProfile> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectProfile> buildQueryWrapper(XzdProjectProfileBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectProfile> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectProfile::getId);
lqw.eq(bo.getXzdProjectId() != null, XzdProjectProfile::getXzdProjectId, bo.getXzdProjectId());
lqw.eq(StringUtils.isNotBlank(bo.getCountry()), XzdProjectProfile::getCountry, bo.getCountry());
lqw.eq(StringUtils.isNotBlank(bo.getProvince()), XzdProjectProfile::getProvince, bo.getProvince());
lqw.eq(StringUtils.isNotBlank(bo.getCity()), XzdProjectProfile::getCity, bo.getCity());
lqw.eq(StringUtils.isNotBlank(bo.getDistrict()), XzdProjectProfile::getDistrict, bo.getDistrict());
lqw.eq(StringUtils.isNotBlank(bo.getProjectAddress()), XzdProjectProfile::getProjectAddress, bo.getProjectAddress());
lqw.eq(bo.getBuildingArea() != null, XzdProjectProfile::getBuildingArea, bo.getBuildingArea());
lqw.eq(StringUtils.isNotBlank(bo.getBuildingAreaUnit()), XzdProjectProfile::getBuildingAreaUnit, bo.getBuildingAreaUnit());
lqw.eq(bo.getFloorCount() != null, XzdProjectProfile::getFloorCount, bo.getFloorCount());
lqw.eq(bo.getHeight() != null, XzdProjectProfile::getHeight, bo.getHeight());
lqw.eq(bo.getParentProjectId() != null, XzdProjectProfile::getParentProjectId, bo.getParentProjectId());
lqw.eq(bo.getContractAmount() != null, XzdProjectProfile::getContractAmount, bo.getContractAmount());
lqw.eq(StringUtils.isNotBlank(bo.getQualityEvaluationGrade()), XzdProjectProfile::getQualityEvaluationGrade, bo.getQualityEvaluationGrade());
lqw.eq(StringUtils.isNotBlank(bo.getSafetyProductionGrade()), XzdProjectProfile::getSafetyProductionGrade, bo.getSafetyProductionGrade());
lqw.eq(StringUtils.isNotBlank(bo.getProjectContractRecordNumber()), XzdProjectProfile::getProjectContractRecordNumber, bo.getProjectContractRecordNumber());
lqw.eq(StringUtils.isNotBlank(bo.getProjectProfile()), XzdProjectProfile::getProjectProfile, bo.getProjectProfile());
return lqw;
}
/**
* 新增项目信息-项目概况
*
* @param bo 项目信息-项目概况
* @return 是否新增成功
*/
@Transactional
@Override
public Boolean insertByBo(XzdProjectProfileBo bo) {
XzdProjectProfile add = MapstructUtils.convert(bo, XzdProjectProfile.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-项目概况
*
* @param bo 项目信息-项目概况
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectProfileBo bo) {
XzdProjectProfile update = MapstructUtils.convert(bo, XzdProjectProfile.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectProfile entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-项目概况信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,284 @@
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.dromara.system.service.impl.SysOssServiceImpl;
import org.dromara.xzd.domain.*;
import org.dromara.xzd.domain.bo.*;
import org.dromara.xzd.domain.vo.XzdProjectAccountingInfoVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.dromara.xzd.domain.vo.XzdProjectVo;
import org.dromara.xzd.mapper.XzdProjectMapper;
import org.dromara.xzd.service.IXzdProjectService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProject> implements IXzdProjectService {
private final XzdProjectMapper baseMapper;
@Autowired
private XzdProjectProfileServiceImpl xzdProjectProfileService;
@Autowired
private XzdProjectPersonnelServiceImpl xzdProjectPersonnelService;
@Autowired
private XzdProjectTaxInfoServiceImpl xzdProjectTaxInfoService;
@Autowired
private XzdProjectAccountingInfoServiceImpl xzdProjectAccountingInfoService;
@Autowired
private XzdProjectWarehousesServiceImpl xzdProjectWarehousesService;
@Autowired
private XzdProjectInternalAccountsServiceImpl xzdProjectInternalAccountsService;
@Autowired
private XzdProjectParticipatingUnitsServiceImpl xzdProjectParticipatingUnitsService;
@Autowired
private SysOssServiceImpl sysOssService;
/**
* 查询项目信息
*
* @param id 主键
* @return 项目信息
*/
@Override
public XzdProjectVo queryById(Long id){
XzdProjectVo projectVo = baseMapper.selectVoById(id);
setValue(projectVo);
return projectVo;
}
/**
* 分页查询项目信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息分页列表
*/
@Override
public TableDataInfo<XzdProjectVo> queryPageList(XzdProjectBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProject> lqw = buildQueryWrapper(bo);
Page<XzdProjectVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息列表
*
* @param bo 查询条件
* @return 项目信息列表
*/
@Override
public List<XzdProjectVo> queryList(XzdProjectBo bo) {
LambdaQueryWrapper<XzdProject> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProject> buildQueryWrapper(XzdProjectBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProject> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProject::getId);
lqw.eq(StringUtils.isNotBlank(bo.getProjectNumber()), XzdProject::getProjectNumber, bo.getProjectNumber());
lqw.like(StringUtils.isNotBlank(bo.getProjectName()), XzdProject::getProjectName, bo.getProjectName());
lqw.eq(bo.getProjectType() != null, XzdProject::getProjectType, bo.getProjectType());
lqw.eq(StringUtils.isNotBlank(bo.getProjectStatus()), XzdProject::getProjectStatus, bo.getProjectStatus());
lqw.eq(bo.getPlannedStartDate() != null, XzdProject::getPlannedStartDate, bo.getPlannedStartDate());
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(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());
lqw.eq(bo.getManagerResponsible() != null, XzdProject::getManagerResponsible, bo.getManagerResponsible());
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.getContractingMethod()), XzdProject::getContractingMethod, bo.getContractingMethod());
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());
lqw.eq(StringUtils.isNotBlank(bo.getGroupProject()), XzdProject::getGroupProject, bo.getGroupProject());
lqw.eq(StringUtils.isNotBlank(bo.getDescription()), XzdProject::getDescription, bo.getDescription());
lqw.eq(bo.getProjectEstablishmentDate() != null, XzdProject::getProjectEstablishmentDate, bo.getProjectEstablishmentDate());
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(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());
lqw.eq(bo.getTargetCollectionAmount() != null, XzdProject::getTargetCollectionAmount, bo.getTargetCollectionAmount());
lqw.eq(StringUtils.isNotBlank(bo.getFileId()), XzdProject::getFileId, bo.getFileId());
lqw.eq(StringUtils.isNotBlank(bo.getAuditStatus()), XzdProject::getAuditStatus, bo.getAuditStatus());
return lqw;
}
/**
* 新增项目信息
*
* @param bo 项目信息
* @return 是否新增成功
*/
@Transactional
@Override
public Boolean insertByBo(XzdProjectBo bo) {
XzdProject add = MapstructUtils.convert(bo, XzdProject.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}else {
return false;
}
//项目概况处理
if (bo.getXmgk() != null){
bo.getXmgk().setXzdProjectId(add.getId());
xzdProjectProfileService.insertByBo(bo.getXmgk());
}
//项目人员处理
if (bo.getXmry() != null && !bo.getXmry().isEmpty()){
for (XzdProjectPersonnelBo personnelBo : bo.getXmry()) {
personnelBo.setXzdProjectId(add.getId());
xzdProjectPersonnelService.insertByBo(personnelBo);
}
}
//税务信息处理
if (bo.getSwxx() != null){
bo.getSwxx().setXzdProjectId(add.getId());
xzdProjectTaxInfoService.insertByBo(bo.getSwxx());
}
//核算信息
if (bo.getHsxx() != null){
bo.getHsxx().setXzdProjectId(add.getId());
xzdProjectAccountingInfoService.insertByBo(bo.getHsxx());
}
//仓库信息
if (bo.getXmck() != null && !bo.getXmck().isEmpty()){
for (XzdProjectWarehousesBo warehousesBo : bo.getXmck()) {
warehousesBo.setXzdProjectId(add.getId());
xzdProjectWarehousesService.insertByBo(warehousesBo);
}
}
//内部账户信息
if (bo.getNbzj() != null && !bo.getNbzj().isEmpty()){
for (XzdProjectInternalAccountsBo internalAccountsBo : bo.getNbzj()) {
internalAccountsBo.setXzdProjectId(add.getId());
xzdProjectInternalAccountsService.insertByBo(internalAccountsBo);
}
}
//参与单位信息
if (bo.getCjdw() != null && !bo.getCjdw().isEmpty()){
for (XzdProjectParticipatingUnitsBo participatingUnitsBo : bo.getCjdw()) {
participatingUnitsBo.setXzdProjectId(add.getId());
xzdProjectParticipatingUnitsService.insertByBo(participatingUnitsBo);
}
}
return true;
}
/**
* 修改项目信息
*
* @param bo 项目信息
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectBo bo) {
XzdProject update = MapstructUtils.convert(bo, XzdProject.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProject entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
private void setValue(XzdProjectVo entity){
//项目概况
LambdaQueryWrapper<XzdProjectProfile> profileLambdaQueryWrapper = new LambdaQueryWrapper<>();
profileLambdaQueryWrapper.eq(XzdProjectProfile::getXzdProjectId, entity.getId());
entity.setXmgk(xzdProjectProfileService.getBaseMapper().selectVoOne(profileLambdaQueryWrapper));
//项目人员
LambdaQueryWrapper<XzdProjectPersonnel> personnelLambdaQueryWrapper = new LambdaQueryWrapper<>();
personnelLambdaQueryWrapper.eq(XzdProjectPersonnel::getXzdProjectId, entity.getId());
entity.setXmry(xzdProjectPersonnelService.getBaseMapper().selectVoList(personnelLambdaQueryWrapper));
//税务信息
LambdaQueryWrapper<XzdProjectTaxInfo> taxInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
taxInfoLambdaQueryWrapper.eq(XzdProjectTaxInfo::getXzdProjectId, entity.getId());
entity.setSwxx(xzdProjectTaxInfoService.getBaseMapper().selectVoOne(taxInfoLambdaQueryWrapper));
//核算信息
LambdaQueryWrapper<XzdProjectAccountingInfo> accountingInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
accountingInfoLambdaQueryWrapper.eq(XzdProjectAccountingInfo::getXzdProjectId, entity.getId());
entity.setHsxx(xzdProjectAccountingInfoService.getBaseMapper().selectVoOne(accountingInfoLambdaQueryWrapper));
//仓库信息
LambdaQueryWrapper<XzdProjectWarehouses> warehousesLambdaQueryWrapper = new LambdaQueryWrapper<>();
warehousesLambdaQueryWrapper.eq(XzdProjectWarehouses::getXzdProjectId, entity.getId());
entity.setXmck(xzdProjectWarehousesService.getBaseMapper().selectVoList(warehousesLambdaQueryWrapper));
//内部账户信息
LambdaQueryWrapper<XzdProjectInternalAccounts> internalAccountsLambdaQueryWrapper = new LambdaQueryWrapper<>();
internalAccountsLambdaQueryWrapper.eq(XzdProjectInternalAccounts::getXzdProjectId, entity.getId());
entity.setNbzj(xzdProjectInternalAccountsService.getBaseMapper().selectVoList(internalAccountsLambdaQueryWrapper));
//参与单位信息
LambdaQueryWrapper<XzdProjectParticipatingUnits> participatingUnitsLambdaQueryWrapper = new LambdaQueryWrapper<>();
participatingUnitsLambdaQueryWrapper.eq(XzdProjectParticipatingUnits::getXzdProjectId, entity.getId());
entity.setCjdw(xzdProjectParticipatingUnitsService.getBaseMapper().selectVoList(participatingUnitsLambdaQueryWrapper));
}
}

View File

@ -0,0 +1,130 @@
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.XzdProjectTaxInfoBo;
import org.dromara.xzd.domain.vo.XzdProjectTaxInfoVo;
import org.dromara.xzd.domain.XzdProjectTaxInfo;
import org.dromara.xzd.mapper.XzdProjectTaxInfoMapper;
import org.dromara.xzd.service.IXzdProjectTaxInfoService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-税务信息Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectTaxInfoServiceImpl extends ServiceImpl<XzdProjectTaxInfoMapper, XzdProjectTaxInfo> implements IXzdProjectTaxInfoService {
private final XzdProjectTaxInfoMapper baseMapper;
/**
* 查询项目信息-税务信息
*
* @param id 主键
* @return 项目信息-税务信息
*/
@Override
public XzdProjectTaxInfoVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-税务信息列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-税务信息分页列表
*/
@Override
public TableDataInfo<XzdProjectTaxInfoVo> queryPageList(XzdProjectTaxInfoBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectTaxInfo> lqw = buildQueryWrapper(bo);
Page<XzdProjectTaxInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-税务信息列表
*
* @param bo 查询条件
* @return 项目信息-税务信息列表
*/
@Override
public List<XzdProjectTaxInfoVo> queryList(XzdProjectTaxInfoBo bo) {
LambdaQueryWrapper<XzdProjectTaxInfo> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectTaxInfo> buildQueryWrapper(XzdProjectTaxInfoBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectTaxInfo> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectTaxInfo::getId);
return lqw;
}
/**
* 新增项目信息-税务信息
*
* @param bo 项目信息-税务信息
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectTaxInfoBo bo) {
XzdProjectTaxInfo add = MapstructUtils.convert(bo, XzdProjectTaxInfo.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-税务信息
*
* @param bo 项目信息-税务信息
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectTaxInfoBo bo) {
XzdProjectTaxInfo update = MapstructUtils.convert(bo, XzdProjectTaxInfo.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectTaxInfo entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-税务信息信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,130 @@
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.XzdProjectWarehousesBo;
import org.dromara.xzd.domain.vo.XzdProjectWarehousesVo;
import org.dromara.xzd.domain.XzdProjectWarehouses;
import org.dromara.xzd.mapper.XzdProjectWarehousesMapper;
import org.dromara.xzd.service.IXzdProjectWarehousesService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 项目信息-项目仓库Service业务层处理
*
* @author Lion Li
* @date 2025-10-10
*/
@RequiredArgsConstructor
@Service
public class XzdProjectWarehousesServiceImpl extends ServiceImpl<XzdProjectWarehousesMapper, XzdProjectWarehouses> implements IXzdProjectWarehousesService {
private final XzdProjectWarehousesMapper baseMapper;
/**
* 查询项目信息-项目仓库
*
* @param id 主键
* @return 项目信息-项目仓库
*/
@Override
public XzdProjectWarehousesVo queryById(Long id){
return baseMapper.selectVoById(id);
}
/**
* 分页查询项目信息-项目仓库列表
*
* @param bo 查询条件
* @param pageQuery 分页参数
* @return 项目信息-项目仓库分页列表
*/
@Override
public TableDataInfo<XzdProjectWarehousesVo> queryPageList(XzdProjectWarehousesBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<XzdProjectWarehouses> lqw = buildQueryWrapper(bo);
Page<XzdProjectWarehousesVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询符合条件的项目信息-项目仓库列表
*
* @param bo 查询条件
* @return 项目信息-项目仓库列表
*/
@Override
public List<XzdProjectWarehousesVo> queryList(XzdProjectWarehousesBo bo) {
LambdaQueryWrapper<XzdProjectWarehouses> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<XzdProjectWarehouses> buildQueryWrapper(XzdProjectWarehousesBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<XzdProjectWarehouses> lqw = Wrappers.lambdaQuery();
lqw.orderByDesc(XzdProjectWarehouses::getId);
return lqw;
}
/**
* 新增项目信息-项目仓库
*
* @param bo 项目信息-项目仓库
* @return 是否新增成功
*/
@Override
public Boolean insertByBo(XzdProjectWarehousesBo bo) {
XzdProjectWarehouses add = MapstructUtils.convert(bo, XzdProjectWarehouses.class);
validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setId(add.getId());
}
return flag;
}
/**
* 修改项目信息-项目仓库
*
* @param bo 项目信息-项目仓库
* @return 是否修改成功
*/
@Override
public Boolean updateByBo(XzdProjectWarehousesBo bo) {
XzdProjectWarehouses update = MapstructUtils.convert(bo, XzdProjectWarehouses.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
/**
* 保存前的数据校验
*/
private void validEntityBeforeSave(XzdProjectWarehouses entity){
//TODO 做一些数据校验,如唯一约束
}
/**
* 校验并批量删除项目信息-项目仓库信息
*
* @param ids 待删除的主键集合
* @param isValid 是否进行有效性校验
* @return 是否删除成功
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteByIds(ids) > 0;
}
}

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.dromara.xzd.mapper.XzdProjectMapper">
<select id="search" resultType="org.dromara.xzd.domain.vo.XzdProjectInfoVo">
</select>
</mapper>