任务,招工

This commit is contained in:
zt
2025-02-18 14:15:00 +08:00
parent 211b9c5475
commit ef59432ca6
75 changed files with 4684 additions and 21 deletions

View File

@ -0,0 +1,60 @@
package com.ruoyi.zbf.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 总包方项目分页查询对象 zbf_project
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("总包方项目分页查询对象")
public class ZbfProjectQueryBo extends BaseEntity {
/** 分页大小 */
@ApiModelProperty("分页大小")
private Integer pageSize;
/** 当前页数 */
@ApiModelProperty("当前页数")
private Integer pageNum;
/** 排序列 */
@ApiModelProperty("排序列")
private String orderByColumn;
/** 排序的方向desc或者asc */
@ApiModelProperty(value = "排序的方向", example = "asc,desc")
private String isAsc;
/** 唯一标识 */
@ApiModelProperty("唯一标识")
private Long userId;
/** 单位名称 */
@ApiModelProperty("单位名称")
private String unitName;
/** 统一社会信用代码 */
@ApiModelProperty("统一社会信用代码")
private String creditCode;
/** 项目名称 */
@ApiModelProperty("项目名称")
private String projectName;
/** 项目图片 */
@ApiModelProperty("项目图片")
private String projectImg;
/** 项目地址 */
@ApiModelProperty("项目地址")
private String projectAddress;
/** 联系人 */
@ApiModelProperty("联系人")
private String contactPerson;
/** 联系电话 */
@ApiModelProperty("联系电话")
private String contactPhone;
}

View File

@ -0,0 +1,52 @@
package com.ruoyi.zbf.bo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.LocalDate;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 总包方项目标段分页查询对象 zbf_project_section
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("总包方项目标段分页查询对象")
public class ZbfProjectSectionQueryBo extends BaseEntity {
/** 分页大小 */
@ApiModelProperty("分页大小")
private Integer pageSize;
/** 当前页数 */
@ApiModelProperty("当前页数")
private Integer pageNum;
/** 排序列 */
@ApiModelProperty("排序列")
private String orderByColumn;
/** 排序的方向desc或者asc */
@ApiModelProperty(value = "排序的方向", example = "asc,desc")
private String isAsc;
/** 项目ID */
@ApiModelProperty("项目ID")
private Long projectId;
/** 标段名称 */
@ApiModelProperty("标段名称")
private String sectionName;
/** 标段描述 */
@ApiModelProperty("标段描述")
private String sectionDescribe;
}

View File

@ -0,0 +1,57 @@
package com.ruoyi.zbf.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 总包方项目分包分页查询对象 zbf_project_subcontracting
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("总包方项目分包分页查询对象")
public class ZbfProjectSubcontractingQueryBo extends BaseEntity {
/** 分页大小 */
@ApiModelProperty("分页大小")
private Integer pageSize;
/** 当前页数 */
@ApiModelProperty("当前页数")
private Integer pageNum;
/** 排序列 */
@ApiModelProperty("排序列")
private String orderByColumn;
/** 排序的方向desc或者asc */
@ApiModelProperty(value = "排序的方向", example = "asc,desc")
private String isAsc;
/** 项目ID */
@ApiModelProperty("项目ID")
private Long projectId;
/** 标段ID */
@ApiModelProperty("标段ID")
private Long sectionId;
/** 分包主题 */
@ApiModelProperty("分包主题")
private String subName;
/** 分包描述 */
@ApiModelProperty("分包描述")
private String subDescribe;
/** 分包金额 */
@ApiModelProperty("分包金额")
private Long subAmount;
/** 资质要求 */
@ApiModelProperty("资质要求")
private String qualification;
/** 分包商用户ID */
@ApiModelProperty("分包商用户ID")
private Long userId;
}

View File

@ -0,0 +1,109 @@
package com.ruoyi.zbf.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 总包方项目对象 zbf_project
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("zbf_project")
@ApiModel("总包方项目视图对象")
public class ZbfProject implements Serializable {
private static final long serialVersionUID=1L;
/** 主键ID */
@ApiModelProperty("主键ID")
@TableId(value = "id")
private Long id;
/** 唯一标识 */
@Excel(name = "唯一标识")
@ApiModelProperty("唯一标识")
private Long userId;
/** 单位名称 */
@Excel(name = "单位名称")
@ApiModelProperty("单位名称")
private String unitName;
/** 统一社会信用代码 */
@Excel(name = "统一社会信用代码")
@ApiModelProperty("统一社会信用代码")
private String creditCode;
/** 项目名称 */
@Excel(name = "项目名称")
@ApiModelProperty("项目名称")
private String projectName;
/** 项目图片 */
@Excel(name = "项目图片")
@ApiModelProperty("项目图片")
private String projectImg;
/** 项目地址 */
@Excel(name = "项目地址")
@ApiModelProperty("项目地址")
private String projectAddress;
/** 联系人 */
@Excel(name = "联系人")
@ApiModelProperty("联系人")
private String contactPerson;
/** 联系电话 */
@Excel(name = "联系电话")
@ApiModelProperty("联系电话")
private String contactPhone;
/** 删除标志0代表存在 2代表删除 */
@Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
@ApiModelProperty("删除标志0代表存在 2代表删除")
@TableLogic
private String delFlag;
/** 创建者 */
@Excel(name = "创建者")
@ApiModelProperty("创建者")
@TableField(fill = FieldFill.INSERT)
private String createBy;
/** 创建时间 */
@Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
/** 更新者 */
@Excel(name = "更新者")
@ApiModelProperty("更新者")
@TableField(fill = FieldFill.INSERT_UPDATE)
private String updateBy;
/** 更新时间 */
@Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("更新时间")
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
/** 备注 */
@Excel(name = "备注")
@ApiModelProperty("备注")
private String remark;
}

View File

@ -0,0 +1,84 @@
package com.ruoyi.zbf.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 总包方项目标段对象 zbf_project_section
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("zbf_project_section")
@ApiModel("总包方项目标段视图对象")
public class ZbfProjectSection implements Serializable {
private static final long serialVersionUID=1L;
/** 主键ID */
@ApiModelProperty("主键ID")
@TableId(value = "id")
private Long id;
/** 项目ID */
@Excel(name = "项目ID")
@ApiModelProperty("项目ID")
private Long projectId;
/** 标段名称 */
@Excel(name = "标段名称")
@ApiModelProperty("标段名称")
private String sectionName;
/** 标段描述 */
@Excel(name = "标段描述")
@ApiModelProperty("标段描述")
private String sectionDescribe;
/** 删除标志0代表存在 2代表删除 */
@Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
@ApiModelProperty("删除标志0代表存在 2代表删除")
@TableLogic
private String delFlag;
/** 创建者 */
@Excel(name = "创建者")
@ApiModelProperty("创建者")
@TableField(fill = FieldFill.INSERT)
private String createBy;
/** 创建时间 */
@Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
/** 更新者 */
@Excel(name = "更新者")
@ApiModelProperty("更新者")
@TableField(fill = FieldFill.INSERT_UPDATE)
private String updateBy;
/** 更新时间 */
@Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("更新时间")
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
/** 备注 */
@Excel(name = "备注")
@ApiModelProperty("备注")
private String remark;
}

View File

@ -0,0 +1,104 @@
package com.ruoyi.zbf.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 总包方项目分包对象 zbf_project_subcontracting
*
* @author ruoyi
* @date 2025-02-17
*/
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("zbf_project_subcontracting")
@ApiModel("总包方项目分包视图对象")
public class ZbfProjectSubcontracting implements Serializable {
private static final long serialVersionUID=1L;
/** 主键ID */
@ApiModelProperty("主键ID")
@TableId(value = "id")
private Long id;
/** 项目ID */
@Excel(name = "项目ID")
@ApiModelProperty("项目ID")
private Long projectId;
/** 标段ID */
@Excel(name = "标段ID")
@ApiModelProperty("标段ID")
private Long sectionId;
/** 分包主题 */
@Excel(name = "分包主题")
@ApiModelProperty("分包主题")
private String subName;
/** 分包描述 */
@Excel(name = "分包描述")
@ApiModelProperty("分包描述")
private String subDescribe;
/** 分包金额 */
@Excel(name = "分包金额")
@ApiModelProperty("分包金额")
private Long subAmount;
/** 资质要求 */
@Excel(name = "资质要求")
@ApiModelProperty("资质要求")
private String qualification;
/** 分包商用户ID */
@Excel(name = "分包商用户ID")
@ApiModelProperty("分包商用户ID")
private Long userId;
/** 删除标志0代表存在 2代表删除 */
@Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除")
@ApiModelProperty("删除标志0代表存在 2代表删除")
@TableLogic
private String delFlag;
/** 创建者 */
@Excel(name = "创建者")
@ApiModelProperty("创建者")
@TableField(fill = FieldFill.INSERT)
private String createBy;
/** 创建时间 */
@Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
/** 更新者 */
@Excel(name = "更新者")
@ApiModelProperty("更新者")
@TableField(fill = FieldFill.INSERT_UPDATE)
private String updateBy;
/** 更新时间 */
@Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty("更新时间")
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
/** 备注 */
@Excel(name = "备注")
@ApiModelProperty("备注")
private String remark;
}

View File

@ -0,0 +1,19 @@
package com.ruoyi.zbf.mapper;
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
import com.ruoyi.zbf.domain.ZbfProject;
import org.apache.ibatis.annotations.CacheNamespace;
/**
* 总包方项目Mapper接口
*
* @author ruoyi
* @date 2025-02-17
*/
// 如使需切换数据源 请勿使用缓存 会造成数据不一致现象
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
public interface ZbfProjectMapper extends BaseMapperPlus<ZbfProject> {
}

View File

@ -0,0 +1,19 @@
package com.ruoyi.zbf.mapper;
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
import com.ruoyi.zbf.domain.ZbfProjectSection;
import org.apache.ibatis.annotations.CacheNamespace;
/**
* 总包方项目标段Mapper接口
*
* @author ruoyi
* @date 2025-02-17
*/
// 如使需切换数据源 请勿使用缓存 会造成数据不一致现象
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
public interface ZbfProjectSectionMapper extends BaseMapperPlus<ZbfProjectSection> {
}

View File

@ -0,0 +1,19 @@
package com.ruoyi.zbf.mapper;
import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache;
import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus;
import com.ruoyi.zbf.domain.ZbfProjectSubcontracting;
import org.apache.ibatis.annotations.CacheNamespace;
/**
* 总包方项目分包Mapper接口
*
* @author ruoyi
* @date 2025-02-17
*/
// 如使需切换数据源 请勿使用缓存 会造成数据不一致现象
@CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class)
public interface ZbfProjectSubcontractingMapper extends BaseMapperPlus<ZbfProjectSubcontracting> {
}

View File

@ -0,0 +1,56 @@
package com.ruoyi.zbf.service;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.zbf.bo.ZbfProjectSectionQueryBo;
import com.ruoyi.zbf.domain.ZbfProjectSection;
import java.util.Collection;
import java.util.List;
/**
* 总包方项目标段Service接口
*
* @author ruoyi
* @date 2025-02-17
*/
public interface IZbfProjectSectionService extends IServicePlus<ZbfProjectSection> {
/**
* 查询单个
* @return
*/
ZbfProjectSection queryById(Long id);
/**
* 查询列表
*/
TableDataInfo<ZbfProjectSection> queryPageList(ZbfProjectSectionQueryBo bo);
/**
* 查询列表
*/
List<ZbfProjectSection> queryList(ZbfProjectSectionQueryBo bo);
/**
* 根据新增业务对象插入总包方项目标段
* @param bo 总包方项目标段新增业务对象
* @return
*/
Boolean insert(ZbfProjectSection bo);
/**
* 根据编辑业务对象修改总包方项目标段
* @param bo 总包方项目标段编辑业务对象
* @return
*/
Boolean update(ZbfProjectSection bo);
/**
* 校验并删除数据
* @param ids 主键集合
* @param isValid 是否校验,true-删除前校验,false-不校验
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,56 @@
package com.ruoyi.zbf.service;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.zbf.bo.ZbfProjectQueryBo;
import com.ruoyi.zbf.domain.ZbfProject;
import java.util.Collection;
import java.util.List;
/**
* 总包方项目Service接口
*
* @author ruoyi
* @date 2025-02-17
*/
public interface IZbfProjectService extends IServicePlus<ZbfProject> {
/**
* 查询单个
* @return
*/
ZbfProject queryById(Long id);
/**
* 查询列表
*/
TableDataInfo<ZbfProject> queryPageList(ZbfProjectQueryBo bo);
/**
* 查询列表
*/
List<ZbfProject> queryList(ZbfProjectQueryBo bo);
/**
* 根据新增业务对象插入总包方项目
* @param bo 总包方项目新增业务对象
* @return
*/
Boolean insert(ZbfProject bo);
/**
* 根据编辑业务对象修改总包方项目
* @param bo 总包方项目编辑业务对象
* @return
*/
Boolean update(ZbfProject bo);
/**
* 校验并删除数据
* @param ids 主键集合
* @param isValid 是否校验,true-删除前校验,false-不校验
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,56 @@
package com.ruoyi.zbf.service;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.zbf.bo.ZbfProjectSubcontractingQueryBo;
import com.ruoyi.zbf.domain.ZbfProjectSubcontracting;
import java.util.Collection;
import java.util.List;
/**
* 总包方项目分包Service接口
*
* @author ruoyi
* @date 2025-02-17
*/
public interface IZbfProjectSubcontractingService extends IServicePlus<ZbfProjectSubcontracting> {
/**
* 查询单个
* @return
*/
ZbfProjectSubcontracting queryById(Long id);
/**
* 查询列表
*/
TableDataInfo<ZbfProjectSubcontracting> queryPageList(ZbfProjectSubcontractingQueryBo bo);
/**
* 查询列表
*/
List<ZbfProjectSubcontracting> queryList(ZbfProjectSubcontractingQueryBo bo);
/**
* 根据新增业务对象插入总包方项目分包
* @param bo 总包方项目分包新增业务对象
* @return
*/
Boolean insert(ZbfProjectSubcontracting bo);
/**
* 根据编辑业务对象修改总包方项目分包
* @param bo 总包方项目分包编辑业务对象
* @return
*/
Boolean update(ZbfProjectSubcontracting bo);
/**
* 校验并删除数据
* @param ids 主键集合
* @param isValid 是否校验,true-删除前校验,false-不校验
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
}

View File

@ -0,0 +1,85 @@
package com.ruoyi.zbf.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.zbf.bo.ZbfProjectSectionQueryBo;
import com.ruoyi.zbf.domain.ZbfProjectSection;
import com.ruoyi.zbf.mapper.ZbfProjectSectionMapper;
import com.ruoyi.zbf.service.IZbfProjectSectionService;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* 总包方项目标段Service业务层处理
*
* @author ruoyi
* @date 2025-02-17
*/
@Service
public class ZbfProjectSectionServiceImpl extends ServicePlusImpl<ZbfProjectSectionMapper, ZbfProjectSection> implements IZbfProjectSectionService {
@Override
public ZbfProjectSection queryById(Long id){
return getById(id);
}
@Override
public TableDataInfo<ZbfProjectSection> queryPageList(ZbfProjectSectionQueryBo bo) {
Page<ZbfProjectSection> result = page(PageUtils.buildPage(), buildQueryWrapper(bo));
return PageUtils.buildDataInfo(result);
}
@Override
public List<ZbfProjectSection> queryList(ZbfProjectSectionQueryBo bo) {
return list(buildQueryWrapper(bo));
}
private LambdaQueryWrapper<ZbfProjectSection> buildQueryWrapper(ZbfProjectSectionQueryBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<ZbfProjectSection> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getProjectId() != null, ZbfProjectSection::getProjectId, bo.getProjectId());
lqw.like(StrUtil.isNotBlank(bo.getSectionName()), ZbfProjectSection::getSectionName, bo.getSectionName());
lqw.eq(StrUtil.isNotBlank(bo.getSectionDescribe()), ZbfProjectSection::getSectionDescribe, bo.getSectionDescribe());
return lqw;
}
@Override
public Boolean insert(ZbfProjectSection bo) {
ZbfProjectSection add = BeanUtil.toBean(bo, ZbfProjectSection.class);
validEntityBeforeSave(add);
return save(add);
}
@Override
public Boolean update(ZbfProjectSection bo) {
ZbfProjectSection update = BeanUtil.toBean(bo, ZbfProjectSection.class);
validEntityBeforeSave(update);
return updateById(update);
}
/**
* 保存前的数据校验
*
* @param entity 实体类数据
*/
private void validEntityBeforeSave(ZbfProjectSection entity){
//TODO 做一些数据校验,如唯一约束
}
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return removeByIds(ids);
}
}

View File

@ -0,0 +1,90 @@
package com.ruoyi.zbf.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.zbf.bo.ZbfProjectQueryBo;
import com.ruoyi.zbf.domain.ZbfProject;
import com.ruoyi.zbf.mapper.ZbfProjectMapper;
import com.ruoyi.zbf.service.IZbfProjectService;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* 总包方项目Service业务层处理
*
* @author ruoyi
* @date 2025-02-17
*/
@Service
public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, ZbfProject> implements IZbfProjectService {
@Override
public ZbfProject queryById(Long id){
return getById(id);
}
@Override
public TableDataInfo<ZbfProject> queryPageList(ZbfProjectQueryBo bo) {
Page<ZbfProject> result = page(PageUtils.buildPage(), buildQueryWrapper(bo));
return PageUtils.buildDataInfo(result);
}
@Override
public List<ZbfProject> queryList(ZbfProjectQueryBo bo) {
return list(buildQueryWrapper(bo));
}
private LambdaQueryWrapper<ZbfProject> buildQueryWrapper(ZbfProjectQueryBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<ZbfProject> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getUserId() != null, ZbfProject::getUserId, bo.getUserId());
lqw.like(StrUtil.isNotBlank(bo.getUnitName()), ZbfProject::getUnitName, bo.getUnitName());
lqw.eq(StrUtil.isNotBlank(bo.getCreditCode()), ZbfProject::getCreditCode, bo.getCreditCode());
lqw.like(StrUtil.isNotBlank(bo.getProjectName()), ZbfProject::getProjectName, bo.getProjectName());
lqw.eq(StrUtil.isNotBlank(bo.getProjectImg()), ZbfProject::getProjectImg, bo.getProjectImg());
lqw.eq(StrUtil.isNotBlank(bo.getProjectAddress()), ZbfProject::getProjectAddress, bo.getProjectAddress());
lqw.eq(StrUtil.isNotBlank(bo.getContactPerson()), ZbfProject::getContactPerson, bo.getContactPerson());
lqw.eq(StrUtil.isNotBlank(bo.getContactPhone()), ZbfProject::getContactPhone, bo.getContactPhone());
return lqw;
}
@Override
public Boolean insert(ZbfProject bo) {
ZbfProject add = BeanUtil.toBean(bo, ZbfProject.class);
validEntityBeforeSave(add);
return save(add);
}
@Override
public Boolean update(ZbfProject bo) {
ZbfProject update = BeanUtil.toBean(bo, ZbfProject.class);
validEntityBeforeSave(update);
return updateById(update);
}
/**
* 保存前的数据校验
*
* @param entity 实体类数据
*/
private void validEntityBeforeSave(ZbfProject entity){
//TODO 做一些数据校验,如唯一约束
}
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return removeByIds(ids);
}
}

View File

@ -0,0 +1,89 @@
package com.ruoyi.zbf.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.zbf.bo.ZbfProjectSubcontractingQueryBo;
import com.ruoyi.zbf.domain.ZbfProjectSubcontracting;
import com.ruoyi.zbf.mapper.ZbfProjectSubcontractingMapper;
import com.ruoyi.zbf.service.IZbfProjectSubcontractingService;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* 总包方项目分包Service业务层处理
*
* @author ruoyi
* @date 2025-02-17
*/
@Service
public class ZbfProjectSubcontractingServiceImpl extends ServicePlusImpl<ZbfProjectSubcontractingMapper, ZbfProjectSubcontracting> implements IZbfProjectSubcontractingService {
@Override
public ZbfProjectSubcontracting queryById(Long id){
return getById(id);
}
@Override
public TableDataInfo<ZbfProjectSubcontracting> queryPageList(ZbfProjectSubcontractingQueryBo bo) {
Page<ZbfProjectSubcontracting> result = page(PageUtils.buildPage(), buildQueryWrapper(bo));
return PageUtils.buildDataInfo(result);
}
@Override
public List<ZbfProjectSubcontracting> queryList(ZbfProjectSubcontractingQueryBo bo) {
return list(buildQueryWrapper(bo));
}
private LambdaQueryWrapper<ZbfProjectSubcontracting> buildQueryWrapper(ZbfProjectSubcontractingQueryBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<ZbfProjectSubcontracting> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getProjectId() != null, ZbfProjectSubcontracting::getProjectId, bo.getProjectId());
lqw.eq(bo.getSectionId() != null, ZbfProjectSubcontracting::getSectionId, bo.getSectionId());
lqw.like(StrUtil.isNotBlank(bo.getSubName()), ZbfProjectSubcontracting::getSubName, bo.getSubName());
lqw.eq(StrUtil.isNotBlank(bo.getSubDescribe()), ZbfProjectSubcontracting::getSubDescribe, bo.getSubDescribe());
lqw.eq(bo.getSubAmount() != null, ZbfProjectSubcontracting::getSubAmount, bo.getSubAmount());
lqw.eq(StrUtil.isNotBlank(bo.getQualification()), ZbfProjectSubcontracting::getQualification, bo.getQualification());
lqw.eq(bo.getUserId() != null, ZbfProjectSubcontracting::getUserId, bo.getUserId());
return lqw;
}
@Override
public Boolean insert(ZbfProjectSubcontracting bo) {
ZbfProjectSubcontracting add = BeanUtil.toBean(bo, ZbfProjectSubcontracting.class);
validEntityBeforeSave(add);
return save(add);
}
@Override
public Boolean update(ZbfProjectSubcontracting bo) {
ZbfProjectSubcontracting update = BeanUtil.toBean(bo, ZbfProjectSubcontracting.class);
validEntityBeforeSave(update);
return updateById(update);
}
/**
* 保存前的数据校验
*
* @param entity 实体类数据
*/
private void validEntityBeforeSave(ZbfProjectSubcontracting entity){
//TODO 做一些数据校验,如唯一约束
}
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return removeByIds(ids);
}
}