diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterielInfoController.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterialInfoController.java similarity index 53% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterielInfoController.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterialInfoController.java index 0e314ed2..d8caf6d4 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterielInfoController.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/controller/BaseMaterialInfoController.java @@ -17,99 +17,99 @@ 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.oa.base.domain.vo.BaseMaterielInfoVo; -import org.dromara.oa.base.domain.bo.BaseMaterielInfoBo; -import org.dromara.oa.base.service.IBaseMaterielInfoService; +import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo; +import org.dromara.oa.base.domain.bo.BaseMaterialInfoBo; +import org.dromara.oa.base.service.IBaseMaterialInfoService; import org.dromara.common.mybatis.core.page.TableDataInfo; /** * SAP物料信息 - * 前端访问路由地址为:/oa/base/materielInfo + * 前端访问路由地址为:/oa/base/materialInfo * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ @Validated @RequiredArgsConstructor @RestController -@RequestMapping("/base/materielInfo") -public class BaseMaterielInfoController extends BaseController { +@RequestMapping("/base/materialInfo") +public class BaseMaterialInfoController extends BaseController { - private final IBaseMaterielInfoService baseMaterielInfoService; + private final IBaseMaterialInfoService baseMaterialInfoService; /** * 查询SAP物料信息列表 */ - @SaCheckPermission("oa/base:materielInfo:list") + @SaCheckPermission("oa/base:materialInfo:list") @GetMapping("/list") - public TableDataInfo list(BaseMaterielInfoBo bo, PageQuery pageQuery) { - return baseMaterielInfoService.queryPageList(bo, pageQuery); + public TableDataInfo list(BaseMaterialInfoBo bo, PageQuery pageQuery) { + return baseMaterialInfoService.queryPageList(bo, pageQuery); } /** * 导出SAP物料信息列表 */ - @SaCheckPermission("oa/base:materielInfo:export") + @SaCheckPermission("oa/base:materialInfo:export") @Log(title = "SAP物料信息", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(BaseMaterielInfoBo bo, HttpServletResponse response) { - List list = baseMaterielInfoService.queryList(bo); - ExcelUtil.exportExcel(list, "SAP物料信息", BaseMaterielInfoVo.class, response); + public void export(BaseMaterialInfoBo bo, HttpServletResponse response) { + List list = baseMaterialInfoService.queryList(bo); + ExcelUtil.exportExcel(list, "SAP物料信息", BaseMaterialInfoVo.class, response); } /** * 获取SAP物料信息详细信息 * - * @param materielId 主键 + * @param materialId 主键 */ - @SaCheckPermission("oa/base:materielInfo:query") - @GetMapping("/{materielId}") - public R getInfo(@NotNull(message = "主键不能为空") - @PathVariable("materielId") Long materielId) { - return R.ok(baseMaterielInfoService.queryById(materielId)); + @SaCheckPermission("oa/base:materialInfo:query") + @GetMapping("/{materialId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable("materialId") Long materialId) { + return R.ok(baseMaterialInfoService.queryById(materialId)); } /** * 新增SAP物料信息 */ - @SaCheckPermission("oa/base:materielInfo:add") + @SaCheckPermission("oa/base:materialInfo:add") @Log(title = "SAP物料信息", businessType = BusinessType.INSERT) @RepeatSubmit() @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody BaseMaterielInfoBo bo) { - return toAjax(baseMaterielInfoService.insertByBo(bo)); + public R add(@Validated(AddGroup.class) @RequestBody BaseMaterialInfoBo bo) { + return toAjax(baseMaterialInfoService.insertByBo(bo)); } /** * 修改SAP物料信息 */ - @SaCheckPermission("oa/base:materielInfo:edit") + @SaCheckPermission("oa/base:materialInfo:edit") @Log(title = "SAP物料信息", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody BaseMaterielInfoBo bo) { - return toAjax(baseMaterielInfoService.updateByBo(bo)); + public R edit(@Validated(EditGroup.class) @RequestBody BaseMaterialInfoBo bo) { + return toAjax(baseMaterialInfoService.updateByBo(bo)); } /** * 删除SAP物料信息 * - * @param materielIds 主键串 + * @param materialIds 主键串 */ - @SaCheckPermission("oa/base:materielInfo:remove") + @SaCheckPermission("oa/base:materialInfo:remove") @Log(title = "SAP物料信息", businessType = BusinessType.DELETE) - @DeleteMapping("/{materielIds}") + @DeleteMapping("/{materialIds}") public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable("materielIds") Long[] materielIds) { - return toAjax(baseMaterielInfoService.deleteWithValidByIds(List.of(materielIds), true)); + @PathVariable("materialIds") Long[] materialIds) { + return toAjax(baseMaterialInfoService.deleteWithValidByIds(List.of(materialIds), true)); } /** * 下拉框查询SAP物料信息列表 */ - @GetMapping("/getBaseMaterielInfoList") - public R> getBaseMaterielInfoList(BaseMaterielInfoBo bo) { - List list = baseMaterielInfoService.queryList(bo); + @GetMapping("/getBaseMaterialInfoList") + public R> getBaseMaterialInfoList(BaseMaterialInfoBo bo) { + List list = baseMaterialInfoService.queryList(bo); return R.ok(list); } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterielInfo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterialInfo.java similarity index 71% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterielInfo.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterialInfo.java index 869c9cae..28997128 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterielInfo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/BaseMaterialInfo.java @@ -8,15 +8,15 @@ import lombok.EqualsAndHashCode; import java.io.Serial; /** - * SAP物料信息对象 base_materiel_info + * SAP物料信息对象 base_material_info * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("base_materiel_info") -public class BaseMaterielInfo extends TenantEntity { +@TableName("base_material_info") +public class BaseMaterialInfo extends TenantEntity { @Serial private static final long serialVersionUID = 1L; @@ -24,28 +24,28 @@ public class BaseMaterielInfo extends TenantEntity { /** * 物料ID */ - @TableId(value = "materiel_id", type = IdType.AUTO) - private Long materielId; + @TableId(value = "material_id", type = IdType.AUTO) + private Long materialId; /** * SAP物料编码 */ - private String materielCode; + private String materialCode; /** * SAP物料名称 */ - private String materielName; + private String materialName; /** * 物料品牌 */ - private String materielBrand; + private String materialBrand; /** * 物料型号 */ - private String materielModel; + private String materialModel; /** * 单位ID @@ -88,9 +88,5 @@ public class BaseMaterielInfo extends TenantEntity { @TableLogic private String delFlag; - /** - * 物料单位 - */ - @TableField(exist = false) - private String unitName; + } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterielInfoBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterialInfoBo.java similarity index 70% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterielInfoBo.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterialInfoBo.java index d4fa6fb0..bbaef596 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterielInfoBo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/bo/BaseMaterialInfoBo.java @@ -1,6 +1,6 @@ package org.dromara.oa.base.domain.bo; -import org.dromara.oa.base.domain.BaseMaterielInfo; +import org.dromara.oa.base.domain.BaseMaterialInfo; import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.EditGroup; @@ -10,45 +10,46 @@ import lombok.EqualsAndHashCode; import jakarta.validation.constraints.*; /** - * SAP物料信息业务对象 base_materiel_info + * SAP物料信息业务对象 base_material_info * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ @Data @EqualsAndHashCode(callSuper = true) -@AutoMapper(target = BaseMaterielInfo.class, reverseConvertGenerate = false) -public class BaseMaterielInfoBo extends BaseEntity { +@AutoMapper(target = BaseMaterialInfo.class, reverseConvertGenerate = false) +public class BaseMaterialInfoBo extends BaseEntity { /** * 物料ID */ @NotNull(message = "物料ID不能为空", groups = { EditGroup.class }) - private Long materielId; + private Long materialId; /** * SAP物料编码 */ - private String materielCode; + private String materialCode; /** * SAP物料名称 */ - private String materielName; + private String materialName; /** * 物料品牌 */ - private String materielBrand; + private String materialBrand; /** * 物料型号 */ - private String materielModel; + private String materialModel; /** * 单位ID */ + @NotNull(message = "单位ID不能为空", groups = { AddGroup.class, EditGroup.class }) private Long unitId; /** @@ -81,9 +82,5 @@ public class BaseMaterielInfoBo extends BaseEntity { */ private String activeFlag; - /** - * 物料单位 - */ - private String unitName; } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterielInfoVo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterialInfoVo.java similarity index 79% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterielInfoVo.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterialInfoVo.java index 5a42db6c..3184be85 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterielInfoVo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/domain/vo/BaseMaterialInfoVo.java @@ -1,6 +1,6 @@ package org.dromara.oa.base.domain.vo; -import org.dromara.oa.base.domain.BaseMaterielInfo; +import org.dromara.oa.base.domain.BaseMaterialInfo; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import org.dromara.common.excel.annotation.ExcelDictFormat; @@ -15,15 +15,15 @@ import java.util.Date; /** - * SAP物料信息视图对象 base_materiel_info + * SAP物料信息视图对象 base_material_info * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ @Data @ExcelIgnoreUnannotated -@AutoMapper(target = BaseMaterielInfo.class) -public class BaseMaterielInfoVo implements Serializable { +@AutoMapper(target = BaseMaterialInfo.class) +public class BaseMaterialInfoVo implements Serializable { @Serial private static final long serialVersionUID = 1L; @@ -32,31 +32,31 @@ public class BaseMaterielInfoVo implements Serializable { * 物料ID */ @ExcelProperty(value = "物料ID") - private Long materielId; + private Long materialId; /** * SAP物料编码 */ @ExcelProperty(value = "SAP物料编码") - private String materielCode; + private String materialCode; /** * SAP物料名称 */ @ExcelProperty(value = "SAP物料名称") - private String materielName; + private String materialName; /** * 物料品牌 */ @ExcelProperty(value = "物料品牌") - private String materielBrand; + private String materialBrand; /** * 物料型号 */ @ExcelProperty(value = "物料型号") - private String materielModel; + private String materialModel; /** * 单位ID @@ -64,12 +64,6 @@ public class BaseMaterielInfoVo implements Serializable { @ExcelProperty(value = "单位ID") private Long unitId; - /** - * 物料单位 - */ - @ExcelProperty(value = "物料单位") - private String unitName; - /** * 物料参数 */ @@ -108,4 +102,5 @@ public class BaseMaterielInfoVo implements Serializable { @ExcelDictFormat(dictType = "active_flag") private String activeFlag; + } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterielInfoMapper.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterialInfoMapper.java similarity index 56% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterielInfoMapper.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterialInfoMapper.java index 7ea84529..51cfc50e 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterielInfoMapper.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/mapper/BaseMaterialInfoMapper.java @@ -1,22 +1,21 @@ package org.dromara.oa.base.mapper; import java.util.List; - import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; -import org.dromara.oa.base.domain.BaseMaterielInfo; -import org.dromara.oa.base.domain.vo.BaseMaterielInfoVo; +import org.dromara.oa.base.domain.BaseMaterialInfo; +import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; /** * SAP物料信息Mapper接口 * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ -public interface BaseMaterielInfoMapper extends BaseMapperPlus { +public interface BaseMaterialInfoMapper extends BaseMapperPlus { /** * 查询SAP物料信息列表 @@ -25,7 +24,7 @@ public interface BaseMaterielInfoMapper extends BaseMapperPlus selectCustomBaseMaterielInfoVoList(@Param("page") Page page, @Param(Constants.WRAPPER) MPJLambdaWrapper queryWrapper); + public Page selectCustomBaseMaterialInfoVoList(@Param("page") Page page, @Param(Constants.WRAPPER) MPJLambdaWrapper queryWrapper); /** * 查询SAP物料信息列表 @@ -33,6 +32,6 @@ public interface BaseMaterielInfoMapper extends BaseMapperPlus selectCustomBaseMaterielInfoVoList(@Param(Constants.WRAPPER) MPJLambdaWrapper queryWrapper); + public List selectCustomBaseMaterialInfoVoList(@Param(Constants.WRAPPER) MPJLambdaWrapper queryWrapper); } diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterielInfoService.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterialInfoService.java similarity index 69% rename from ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterielInfoService.java rename to ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterialInfoService.java index 9f79eb5f..a6a468c9 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterielInfoService.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/IBaseMaterialInfoService.java @@ -1,8 +1,8 @@ package org.dromara.oa.base.service; -import org.dromara.oa.base.domain.BaseMaterielInfo; -import org.dromara.oa.base.domain.vo.BaseMaterielInfoVo; -import org.dromara.oa.base.domain.bo.BaseMaterielInfoBo; +import org.dromara.oa.base.domain.BaseMaterialInfo; +import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo; +import org.dromara.oa.base.domain.bo.BaseMaterialInfoBo; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.PageQuery; @@ -13,17 +13,17 @@ import java.util.List; * SAP物料信息Service接口 * * @author Yinq - * @date 2025-09-28 + * @date 2025-09-30 */ -public interface IBaseMaterielInfoService { +public interface IBaseMaterialInfoService { /** * 查询SAP物料信息 * - * @param materielId 主键 + * @param materialId 主键 * @return SAP物料信息 */ - BaseMaterielInfoVo queryById(Long materielId); + BaseMaterialInfoVo queryById(Long materialId); /** * 分页查询SAP物料信息列表 @@ -32,7 +32,7 @@ public interface IBaseMaterielInfoService { * @param pageQuery 分页参数 * @return SAP物料信息分页列表 */ - TableDataInfo queryPageList(BaseMaterielInfoBo bo, PageQuery pageQuery); + TableDataInfo queryPageList(BaseMaterialInfoBo bo, PageQuery pageQuery); /** * 查询符合条件的SAP物料信息列表 @@ -40,7 +40,7 @@ public interface IBaseMaterielInfoService { * @param bo 查询条件 * @return SAP物料信息列表 */ - List queryList(BaseMaterielInfoBo bo); + List queryList(BaseMaterialInfoBo bo); /** * 新增SAP物料信息 @@ -48,7 +48,7 @@ public interface IBaseMaterielInfoService { * @param bo SAP物料信息 * @return 是否新增成功 */ - Boolean insertByBo(BaseMaterielInfoBo bo); + Boolean insertByBo(BaseMaterialInfoBo bo); /** * 修改SAP物料信息 @@ -56,7 +56,7 @@ public interface IBaseMaterielInfoService { * @param bo SAP物料信息 * @return 是否修改成功 */ - Boolean updateByBo(BaseMaterielInfoBo bo); + Boolean updateByBo(BaseMaterialInfoBo bo); /** * 校验并批量删除SAP物料信息信息 diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterialInfoServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterialInfoServiceImpl.java new file mode 100644 index 00000000..81b05efa --- /dev/null +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterialInfoServiceImpl.java @@ -0,0 +1,141 @@ +package org.dromara.oa.base.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.github.yulichang.toolkit.JoinWrappers; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.oa.base.domain.bo.BaseMaterialInfoBo; +import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo; +import org.dromara.oa.base.domain.BaseMaterialInfo; +import org.dromara.oa.base.mapper.BaseMaterialInfoMapper; +import org.dromara.oa.base.service.IBaseMaterialInfoService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * SAP物料信息Service业务层处理 + * + * @author Yinq + * @date 2025-09-30 + */ +@RequiredArgsConstructor +@Service +public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService { + + private final BaseMaterialInfoMapper baseMapper; + + /** + * 查询SAP物料信息 + * + * @param materialId 主键 + * @return SAP物料信息 + */ + @Override + public BaseMaterialInfoVo queryById(Long materialId){ + return baseMapper.selectVoById(materialId); + } + + /** + * 分页查询SAP物料信息列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return SAP物料信息分页列表 + */ + @Override + public TableDataInfo queryPageList(BaseMaterialInfoBo bo, PageQuery pageQuery) { + MPJLambdaWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的SAP物料信息列表 + * + * @param bo 查询条件 + * @return SAP物料信息列表 + */ + @Override + public List queryList(BaseMaterialInfoBo bo) { + MPJLambdaWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private MPJLambdaWrapper buildQueryWrapper(BaseMaterialInfoBo bo) { + Map params = bo.getParams(); + MPJLambdaWrapper lqw = JoinWrappers.lambda(BaseMaterialInfo.class) + .selectAll(BaseMaterialInfo.class) + .eq(StringUtils.isNotBlank(bo.getMaterialCode()), BaseMaterialInfo::getMaterialCode, bo.getMaterialCode()) + .like(StringUtils.isNotBlank(bo.getMaterialName()), BaseMaterialInfo::getMaterialName, bo.getMaterialName()) + .eq(StringUtils.isNotBlank(bo.getMaterialBrand()), BaseMaterialInfo::getMaterialBrand, bo.getMaterialBrand()) + .eq(StringUtils.isNotBlank(bo.getMaterialModel()), BaseMaterialInfo::getMaterialModel, bo.getMaterialModel()) + .eq(bo.getUnitId() != null, BaseMaterialInfo::getUnitId, bo.getUnitId()) + .eq(StringUtils.isNotBlank(bo.getMaterialParameter()), BaseMaterialInfo::getMaterialParameter, bo.getMaterialParameter()) + .eq(bo.getPurchasePrice() != null, BaseMaterialInfo::getPurchasePrice, bo.getPurchasePrice()) + .eq(bo.getForeignPrice() != null, BaseMaterialInfo::getForeignPrice, bo.getForeignPrice()) + .eq(bo.getStockingPeriod() != null, BaseMaterialInfo::getStockingPeriod, bo.getStockingPeriod()) + .eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseMaterialInfo::getActiveFlag, bo.getActiveFlag()) +; + return lqw; + } + + /** + * 新增SAP物料信息 + * + * @param bo SAP物料信息 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(BaseMaterialInfoBo bo) { + BaseMaterialInfo add = MapstructUtils.convert(bo, BaseMaterialInfo.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setMaterialId(add.getMaterialId()); + } + return flag; + } + + /** + * 修改SAP物料信息 + * + * @param bo SAP物料信息 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(BaseMaterialInfoBo bo) { + BaseMaterialInfo update = MapstructUtils.convert(bo, BaseMaterialInfo.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(BaseMaterialInfo entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除SAP物料信息信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterielInfoServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterielInfoServiceImpl.java deleted file mode 100644 index 7053ea92..00000000 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/base/service/impl/BaseMaterielInfoServiceImpl.java +++ /dev/null @@ -1,143 +0,0 @@ -package org.dromara.oa.base.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.github.yulichang.toolkit.JoinWrappers; -import com.github.yulichang.wrapper.MPJLambdaWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import lombok.RequiredArgsConstructor; -import org.dromara.oa.base.domain.BaseUnitInfo; -import org.springframework.stereotype.Service; -import org.dromara.oa.base.domain.bo.BaseMaterielInfoBo; -import org.dromara.oa.base.domain.vo.BaseMaterielInfoVo; -import org.dromara.oa.base.domain.BaseMaterielInfo; -import org.dromara.oa.base.mapper.BaseMaterielInfoMapper; -import org.dromara.oa.base.service.IBaseMaterielInfoService; - -import java.util.List; -import java.util.Map; -import java.util.Collection; - -/** - * SAP物料信息Service业务层处理 - * - * @author Yinq - * @date 2025-09-28 - */ -@RequiredArgsConstructor -@Service -public class BaseMaterielInfoServiceImpl implements IBaseMaterielInfoService { - - private final BaseMaterielInfoMapper baseMapper; - - /** - * 查询SAP物料信息 - * - * @param materielId 主键 - * @return SAP物料信息 - */ - @Override - public BaseMaterielInfoVo queryById(Long materielId) { - return baseMapper.selectVoById(materielId); - } - - /** - * 分页查询SAP物料信息列表 - * - * @param bo 查询条件 - * @param pageQuery 分页参数 - * @return SAP物料信息分页列表 - */ - @Override - public TableDataInfo queryPageList(BaseMaterielInfoBo bo, PageQuery pageQuery) { - MPJLambdaWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); - } - - /** - * 查询符合条件的SAP物料信息列表 - * - * @param bo 查询条件 - * @return SAP物料信息列表 - */ - @Override - public List queryList(BaseMaterielInfoBo bo) { - MPJLambdaWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); - } - - private MPJLambdaWrapper buildQueryWrapper(BaseMaterielInfoBo bo) { - Map params = bo.getParams(); - MPJLambdaWrapper lqw = JoinWrappers.lambda(BaseMaterielInfo.class) - .selectAll(BaseMaterielInfo.class) - .select(BaseUnitInfo::getUnitName) - .leftJoin(BaseUnitInfo.class, BaseUnitInfo::getUnitId, BaseMaterielInfo::getUnitId) - .like(StringUtils.isNotBlank(bo.getMaterielCode()), BaseMaterielInfo::getMaterielCode, bo.getMaterielCode()) - .like(StringUtils.isNotBlank(bo.getMaterielName()), BaseMaterielInfo::getMaterielName, bo.getMaterielName()) - .like(StringUtils.isNotBlank(bo.getMaterielBrand()), BaseMaterielInfo::getMaterielBrand, bo.getMaterielBrand()) - .like(StringUtils.isNotBlank(bo.getMaterielModel()), BaseMaterielInfo::getMaterielModel, bo.getMaterielModel()) - .eq(bo.getUnitId() != null, BaseMaterielInfo::getUnitId, bo.getUnitId()) - .like(StringUtils.isNotBlank(bo.getMaterialParameter()), BaseMaterielInfo::getMaterialParameter, bo.getMaterialParameter()) - .eq(bo.getPurchasePrice() != null, BaseMaterielInfo::getPurchasePrice, bo.getPurchasePrice()) - .eq(bo.getForeignPrice() != null, BaseMaterielInfo::getForeignPrice, bo.getForeignPrice()) - .eq(bo.getStockingPeriod() != null, BaseMaterielInfo::getStockingPeriod, bo.getStockingPeriod()) - .eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseMaterielInfo::getActiveFlag, bo.getActiveFlag()); - return lqw; - } - - /** - * 新增SAP物料信息 - * - * @param bo SAP物料信息 - * @return 是否新增成功 - */ - @Override - public Boolean insertByBo(BaseMaterielInfoBo bo) { - BaseMaterielInfo add = MapstructUtils.convert(bo, BaseMaterielInfo.class); - validEntityBeforeSave(add); - boolean flag = baseMapper.insert(add) > 0; - if (flag) { - bo.setMaterielId(add.getMaterielId()); - } - return flag; - } - - /** - * 修改SAP物料信息 - * - * @param bo SAP物料信息 - * @return 是否修改成功 - */ - @Override - public Boolean updateByBo(BaseMaterielInfoBo bo) { - BaseMaterielInfo update = MapstructUtils.convert(bo, BaseMaterielInfo.class); - validEntityBeforeSave(update); - return baseMapper.updateById(update) > 0; - } - - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(BaseMaterielInfo entity) { - //TODO 做一些数据校验,如唯一约束 - } - - /** - * 校验并批量删除SAP物料信息信息 - * - * @param ids 待删除的主键集合 - * @param isValid 是否进行有效性校验 - * @return 是否删除成功 - */ - @Override - public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if (isValid) { - //TODO 做一些业务上的校验,判断是否需要校验 - } - return baseMapper.deleteByIds(ids) > 0; - } -} diff --git a/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterielInfoMapper.xml b/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterialInfoMapper.xml similarity index 59% rename from ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterielInfoMapper.xml rename to ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterialInfoMapper.xml index c14e7d6b..f7ca942c 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterielInfoMapper.xml +++ b/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/base/BaseMaterialInfoMapper.xml @@ -2,17 +2,17 @@ - - + + - + select material_id, tenant_id, - materiel_code, - materiel_name, - materiel_brand, - materiel_model, + material_code, + material_name, + material_brand, + material_model, unit_id, material_parameter, purchase_price, @@ -26,7 +26,7 @@ create_time, update_by, update_time - from base_materiel_info t + from base_material_info t ${ew.getCustomSqlSegment}