From f9d1a7a489b67ea8e2a23152c6f68baef6cf132e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E5=B1=95=E8=88=AA?= <2426745133@qq.com> Date: Tue, 14 Oct 2025 16:22:38 +0800 Subject: [PATCH] =?UTF-8?q?10-13-=E6=89=BF=E5=8C=85=E5=90=88=E5=90=8C,?= =?UTF-8?q?=E5=8F=98=E6=9B=B4,=E7=BB=88=E6=AD=A2,=E6=96=B9=E6=A1=88?= =?UTF-8?q?=E9=80=89=E6=8B=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/xzd/domain/XzdContractChange.java | 5 + .../xzd/domain/XzdContractTermination.java | 5 + .../xzd/domain/XzdSolutionSelection.java | 46 ++++++ .../xzd/domain/bo/XzdContractChangeBo.java | 4 + .../domain/bo/XzdContractTerminationBo.java | 5 + .../xzd/domain/bo/XzdSolutionSelectionBo.java | 44 ++++++ .../xzd/domain/vo/XzdContractChangeVo.java | 4 + .../xzd/domain/vo/XzdContractDetailsVo.java | 2 +- .../domain/vo/XzdContractTerminationVo.java | 4 + .../xzd/domain/vo/XzdSolutionSelectionVo.java | 52 +++++++ .../mapper/XzdSolutionSelectionMapper.java | 15 ++ .../service/IXzdSolutionSelectionService.java | 70 ++++++++++ .../impl/XzdContractDetailsServiceImpl.java | 4 +- .../impl/XzdSolutionSelectionServiceImpl.java | 132 ++++++++++++++++++ 14 files changed, 389 insertions(+), 3 deletions(-) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdSolutionSelection.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdSolutionSelectionBo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdSolutionSelectionVo.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdSolutionSelectionMapper.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdSolutionSelectionService.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdSolutionSelectionServiceImpl.java diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractChange.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractChange.java index 2dd55034..be37e392 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractChange.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractChange.java @@ -1,9 +1,12 @@ package org.dromara.xzd.domain; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.common.mybatis.core.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; + import java.util.Date; import java.io.Serial; @@ -41,6 +44,8 @@ public class XzdContractChange extends BaseEntity { /** * 单据日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date documentDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractTermination.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractTermination.java index c12e364b..7f2fa7d6 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractTermination.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdContractTermination.java @@ -1,9 +1,12 @@ package org.dromara.xzd.domain; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.common.mybatis.core.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; + import java.util.Date; import java.io.Serial; @@ -51,6 +54,8 @@ public class XzdContractTermination extends BaseEntity { /** * 终止日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date terminationDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdSolutionSelection.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdSolutionSelection.java new file mode 100644 index 00000000..d6fa6b01 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/XzdSolutionSelection.java @@ -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_solution_selection + * + * @author Lion Li + * @date 2025-10-14 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("xzd_solution_selection") +public class XzdSolutionSelection extends BaseEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 编码 + */ + private String coding; + + /** + * 名称 + */ + private String name; + + /** + * 是否有引用单据 + */ + private Long isDanju; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractChangeBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractChangeBo.java index d137b8b8..d92ac825 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractChangeBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractChangeBo.java @@ -1,5 +1,6 @@ package org.dromara.xzd.domain.bo; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.xzd.domain.XzdContractAdvanceInfo; import org.dromara.xzd.domain.XzdContractChange; import org.dromara.common.mybatis.core.domain.BaseEntity; @@ -14,6 +15,7 @@ import org.dromara.xzd.domain.XzdDeductionItems; import org.dromara.xzd.domain.vo.XzdContractAdvanceInfoVo; import org.dromara.xzd.domain.vo.XzdContractClauseVo; import org.dromara.xzd.domain.vo.XzdDeductionItemsVo; +import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.util.Date; @@ -51,6 +53,8 @@ public class XzdContractChangeBo extends BaseEntity { * 单据日期 */ @NotNull(message = "单据日期不能为空", groups = { AddGroup.class, EditGroup.class }) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date documentDate; // // /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractTerminationBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractTerminationBo.java index 8647e465..7b41d69f 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractTerminationBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdContractTerminationBo.java @@ -1,5 +1,6 @@ package org.dromara.xzd.domain.bo; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.xzd.domain.XzdContractTermination; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.core.validate.AddGroup; @@ -8,6 +9,8 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; + import java.util.Date; /** @@ -53,6 +56,8 @@ public class XzdContractTerminationBo extends BaseEntity { * 终止日期 */ @NotNull(message = "终止日期不能为空", groups = { AddGroup.class, EditGroup.class }) + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date terminationDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdSolutionSelectionBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdSolutionSelectionBo.java new file mode 100644 index 00000000..462f1f62 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/bo/XzdSolutionSelectionBo.java @@ -0,0 +1,44 @@ +package org.dromara.xzd.domain.bo; + +import org.dromara.xzd.domain.XzdSolutionSelection; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; + +/** + * 方案选择帮助业务对象 xzd_solution_selection + * + * @author Lion Li + * @date 2025-10-14 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = XzdSolutionSelection.class, reverseConvertGenerate = false) +public class XzdSolutionSelectionBo extends BaseEntity { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空", groups = { EditGroup.class }) + private Long id; + + /** + * 编码 + */ + private String coding; + + /** + * 名称 + */ + private String name; + + /** + * 是否有引用单据 + */ + private Long isDanju; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractChangeVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractChangeVo.java index a6cca589..d420b85a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractChangeVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractChangeVo.java @@ -3,6 +3,7 @@ package org.dromara.xzd.domain.vo; import java.math.BigDecimal; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.xzd.domain.XzdContractAdvanceInfo; import org.dromara.xzd.domain.XzdContractChange; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; @@ -13,6 +14,7 @@ import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.xzd.domain.XzdContractClause; import org.dromara.xzd.domain.XzdDeductionItems; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serial; import java.io.Serializable; @@ -55,6 +57,8 @@ public class XzdContractChangeVo implements Serializable { * 单据日期 */ @ExcelProperty(value = "单据日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date documentDate; // /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractDetailsVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractDetailsVo.java index eecdcbfe..d7643895 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractDetailsVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractDetailsVo.java @@ -346,7 +346,7 @@ public class XzdContractDetailsVo implements Serializable { /** * 合同主要条款约定 */ - private XzdContractDepositInfo htzytqyd; + private XzdContractDepositInfo htzytkyd; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractTerminationVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractTerminationVo.java index e897d767..e052dad9 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractTerminationVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdContractTerminationVo.java @@ -2,6 +2,7 @@ package org.dromara.xzd.domain.vo; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import org.dromara.xzd.domain.XzdContractTermination; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; @@ -9,6 +10,7 @@ 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.springframework.format.annotation.DateTimeFormat; import java.io.Serial; import java.io.Serializable; @@ -62,6 +64,8 @@ public class XzdContractTerminationVo implements Serializable { * 终止日期 */ @ExcelProperty(value = "终止日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date terminationDate; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdSolutionSelectionVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdSolutionSelectionVo.java new file mode 100644 index 00000000..296a66ed --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/domain/vo/XzdSolutionSelectionVo.java @@ -0,0 +1,52 @@ +package org.dromara.xzd.domain.vo; + +import org.dromara.xzd.domain.XzdSolutionSelection; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; + + +/** + * 方案选择帮助视图对象 xzd_solution_selection + * + * @author Lion Li + * @date 2025-10-14 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = XzdSolutionSelection.class) +public class XzdSolutionSelectionVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @ExcelProperty(value = "主键ID") + private Long id; + + /** + * 编码 + */ + @ExcelProperty(value = "编码") + private String coding; + + /** + * 名称 + */ + @ExcelProperty(value = "名称") + private String name; + + /** + * 是否有引用单据 + */ + @ExcelProperty(value = "是否有引用单据") + private Long isDanju; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdSolutionSelectionMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdSolutionSelectionMapper.java new file mode 100644 index 00000000..e67ad3ce --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/mapper/XzdSolutionSelectionMapper.java @@ -0,0 +1,15 @@ +package org.dromara.xzd.mapper; + +import org.dromara.xzd.domain.XzdSolutionSelection; +import org.dromara.xzd.domain.vo.XzdSolutionSelectionVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 方案选择帮助Mapper接口 + * + * @author Lion Li + * @date 2025-10-14 + */ +public interface XzdSolutionSelectionMapper extends BaseMapperPlus { + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdSolutionSelectionService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdSolutionSelectionService.java new file mode 100644 index 00000000..f3ea0b9c --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/IXzdSolutionSelectionService.java @@ -0,0 +1,70 @@ +package org.dromara.xzd.service; + +import org.dromara.xzd.domain.vo.XzdSolutionSelectionVo; +import org.dromara.xzd.domain.bo.XzdSolutionSelectionBo; +import org.dromara.xzd.domain.XzdSolutionSelection; +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-14 + */ +public interface IXzdSolutionSelectionService extends IService{ + + /** + * 查询方案选择帮助 + * + * @param id 主键 + * @return 方案选择帮助 + */ + XzdSolutionSelectionVo queryById(Long id); + + /** + * 分页查询方案选择帮助列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 方案选择帮助分页列表 + */ + TableDataInfo queryPageList(XzdSolutionSelectionBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的方案选择帮助列表 + * + * @param bo 查询条件 + * @return 方案选择帮助列表 + */ + List queryList(XzdSolutionSelectionBo bo); + + /** + * 新增方案选择帮助 + * + * @param bo 方案选择帮助 + * @return 是否新增成功 + */ + Boolean insertByBo(XzdSolutionSelectionBo bo); + + /** + * 修改方案选择帮助 + * + * @param bo 方案选择帮助 + * @return 是否修改成功 + */ + Boolean updateByBo(XzdSolutionSelectionBo bo); + + /** + * 校验并批量删除方案选择帮助信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdContractDetailsServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdContractDetailsServiceImpl.java index 67c5b71d..3dc5b19a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdContractDetailsServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdContractDetailsServiceImpl.java @@ -277,7 +277,7 @@ public class XzdContractDetailsServiceImpl extends ServiceImpl lambdaQueryWrapper4 = new LambdaQueryWrapper<>(); lambdaQueryWrapper4.eq(XzdContractDepositInfo::getContractDetailsId, info.getId()); XzdContractDepositInfo list3 = xzdContractDepositInfoService.getOne(lambdaQueryWrapper4); - info.setHtzytqyd(list3); + info.setHtzytkyd(list3); //项目责任人 SysUserVo sysUserVo = sysUserService.selectUserById(info.getProjectResponsiblePerson()); diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdSolutionSelectionServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdSolutionSelectionServiceImpl.java new file mode 100644 index 00000000..8d717660 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/xzd/service/impl/XzdSolutionSelectionServiceImpl.java @@ -0,0 +1,132 @@ +package org.dromara.xzd.service.impl; + +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.XzdSolutionSelectionBo; +import org.dromara.xzd.domain.vo.XzdSolutionSelectionVo; +import org.dromara.xzd.domain.XzdSolutionSelection; +import org.dromara.xzd.mapper.XzdSolutionSelectionMapper; +import org.dromara.xzd.service.IXzdSolutionSelectionService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 方案选择帮助Service业务层处理 + * + * @author Lion Li + * @date 2025-10-14 + */ +@RequiredArgsConstructor +@Service +public class XzdSolutionSelectionServiceImpl extends ServiceImpl implements IXzdSolutionSelectionService { + + private final XzdSolutionSelectionMapper baseMapper; + + /** + * 查询方案选择帮助 + * + * @param id 主键 + * @return 方案选择帮助 + */ + @Override + public XzdSolutionSelectionVo queryById(Long id){ + return baseMapper.selectVoById(id); + } + + /** + * 分页查询方案选择帮助列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 方案选择帮助分页列表 + */ + @Override + public TableDataInfo queryPageList(XzdSolutionSelectionBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的方案选择帮助列表 + * + * @param bo 查询条件 + * @return 方案选择帮助列表 + */ + @Override + public List queryList(XzdSolutionSelectionBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(XzdSolutionSelectionBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.orderByDesc(XzdSolutionSelection::getId); + lqw.eq(StringUtils.isNotBlank(bo.getCoding()), XzdSolutionSelection::getCoding, bo.getCoding()); + lqw.like(StringUtils.isNotBlank(bo.getName()), XzdSolutionSelection::getName, bo.getName()); + lqw.eq(bo.getIsDanju() != null, XzdSolutionSelection::getIsDanju, bo.getIsDanju()); + return lqw; + } + + /** + * 新增方案选择帮助 + * + * @param bo 方案选择帮助 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(XzdSolutionSelectionBo bo) { + XzdSolutionSelection add = MapstructUtils.convert(bo, XzdSolutionSelection.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setId(add.getId()); + } + return flag; + } + + /** + * 修改方案选择帮助 + * + * @param bo 方案选择帮助 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(XzdSolutionSelectionBo bo) { + XzdSolutionSelection update = MapstructUtils.convert(bo, XzdSolutionSelection.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(XzdSolutionSelection entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除方案选择帮助信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +}