1.0.5 add物料信息关联单位

dev
yinq 3 months ago
parent 25ae52a03b
commit 470b5b8b4e

@ -88,5 +88,9 @@ public class BaseMaterialInfo extends TenantEntity {
@TableLogic @TableLogic
private String delFlag; private String delFlag;
/**
*
*/
@TableField(exist = false)
private String unitName;
} }

@ -1,5 +1,6 @@
package org.dromara.oa.base.domain.bo; package org.dromara.oa.base.domain.bo;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.oa.base.domain.BaseMaterialInfo; import org.dromara.oa.base.domain.BaseMaterialInfo;
import org.dromara.common.mybatis.core.domain.BaseEntity; import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup; import org.dromara.common.core.validate.AddGroup;
@ -52,6 +53,12 @@ public class BaseMaterialInfoBo extends BaseEntity {
@NotNull(message = "单位ID不能为空", groups = { AddGroup.class, EditGroup.class }) @NotNull(message = "单位ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long unitId; private Long unitId;
/**
*
*/
@ExcelProperty(value = "物料单位")
private String unitName;
/** /**
* *
*/ */

@ -25,12 +25,12 @@ public class BaseRelationMaterielBo extends BaseEntity {
* ID * ID
*/ */
@NotNull(message = "关联物料ID不能为空", groups = { EditGroup.class }) @NotNull(message = "关联物料ID不能为空", groups = { EditGroup.class })
private Long relationMaterielId; private Long relationMaterialId;
/** /**
* ID * ID
*/ */
private Long materielId; private Long materialId;
/** /**
* ID * ID
@ -55,12 +55,12 @@ public class BaseRelationMaterielBo extends BaseEntity {
/** /**
* SAP * SAP
*/ */
private String materielCode; private String materialCode;
/** /**
* SAP * SAP
*/ */
private String materielName; private String materialName;
/** /**
* *

@ -10,7 +10,6 @@ import lombok.Data;
import java.io.Serial; import java.io.Serial;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
@ -64,6 +63,11 @@ public class BaseMaterialInfoVo implements Serializable {
@ExcelProperty(value = "单位ID") @ExcelProperty(value = "单位ID")
private Long unitId; private Long unitId;
/**
*
*/
private String unitName;
/** /**
* *
*/ */

@ -2,13 +2,14 @@ package org.dromara.oa.base.service.impl;
import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.oa.base.domain.BaseUnitInfo;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.dromara.oa.base.domain.bo.BaseMaterialInfoBo; import org.dromara.oa.base.domain.bo.BaseMaterialInfoBo;
import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo; import org.dromara.oa.base.domain.vo.BaseMaterialInfoVo;
@ -39,23 +40,23 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
* @return SAP * @return SAP
*/ */
@Override @Override
public BaseMaterialInfoVo queryById(Long materialId){ public BaseMaterialInfoVo queryById(Long materialId) {
return baseMapper.selectVoById(materialId); return baseMapper.selectVoById(materialId);
} }
/** /**
* SAP * SAP
* *
* @param bo * @param bo
* @param pageQuery * @param pageQuery
* @return SAP * @return SAP
*/ */
@Override @Override
public TableDataInfo<BaseMaterialInfoVo> queryPageList(BaseMaterialInfoBo bo, PageQuery pageQuery) { public TableDataInfo<BaseMaterialInfoVo> queryPageList(BaseMaterialInfoBo bo, PageQuery pageQuery) {
MPJLambdaWrapper<BaseMaterialInfo> lqw = buildQueryWrapper(bo); MPJLambdaWrapper<BaseMaterialInfo> lqw = buildQueryWrapper(bo);
Page<BaseMaterialInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw); Page<BaseMaterialInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result); return TableDataInfo.build(result);
} }
/** /**
* SAP * SAP
@ -72,18 +73,19 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
private MPJLambdaWrapper<BaseMaterialInfo> buildQueryWrapper(BaseMaterialInfoBo bo) { private MPJLambdaWrapper<BaseMaterialInfo> buildQueryWrapper(BaseMaterialInfoBo bo) {
Map<String, Object> params = bo.getParams(); Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseMaterialInfo> lqw = JoinWrappers.lambda(BaseMaterialInfo.class) MPJLambdaWrapper<BaseMaterialInfo> lqw = JoinWrappers.lambda(BaseMaterialInfo.class)
.selectAll(BaseMaterialInfo.class) .selectAll(BaseMaterialInfo.class)
.eq(StringUtils.isNotBlank(bo.getMaterialCode()), BaseMaterialInfo::getMaterialCode, bo.getMaterialCode()) .select(BaseUnitInfo::getUnitName)
.like(StringUtils.isNotBlank(bo.getMaterialName()), BaseMaterialInfo::getMaterialName, bo.getMaterialName()) .leftJoin(BaseUnitInfo.class, BaseUnitInfo::getUnitId, BaseMaterialInfo::getUnitId)
.eq(StringUtils.isNotBlank(bo.getMaterialBrand()), BaseMaterialInfo::getMaterialBrand, bo.getMaterialBrand()) .eq(StringUtils.isNotBlank(bo.getMaterialCode()), BaseMaterialInfo::getMaterialCode, bo.getMaterialCode())
.eq(StringUtils.isNotBlank(bo.getMaterialModel()), BaseMaterialInfo::getMaterialModel, bo.getMaterialModel()) .like(StringUtils.isNotBlank(bo.getMaterialName()), BaseMaterialInfo::getMaterialName, bo.getMaterialName())
.eq(bo.getUnitId() != null, BaseMaterialInfo::getUnitId, bo.getUnitId()) .eq(StringUtils.isNotBlank(bo.getMaterialBrand()), BaseMaterialInfo::getMaterialBrand, bo.getMaterialBrand())
.eq(StringUtils.isNotBlank(bo.getMaterialParameter()), BaseMaterialInfo::getMaterialParameter, bo.getMaterialParameter()) .eq(StringUtils.isNotBlank(bo.getMaterialModel()), BaseMaterialInfo::getMaterialModel, bo.getMaterialModel())
.eq(bo.getPurchasePrice() != null, BaseMaterialInfo::getPurchasePrice, bo.getPurchasePrice()) .eq(bo.getUnitId() != null, BaseMaterialInfo::getUnitId, bo.getUnitId())
.eq(bo.getForeignPrice() != null, BaseMaterialInfo::getForeignPrice, bo.getForeignPrice()) .eq(StringUtils.isNotBlank(bo.getMaterialParameter()), BaseMaterialInfo::getMaterialParameter, bo.getMaterialParameter())
.eq(bo.getStockingPeriod() != null, BaseMaterialInfo::getStockingPeriod, bo.getStockingPeriod()) .eq(bo.getPurchasePrice() != null, BaseMaterialInfo::getPurchasePrice, bo.getPurchasePrice())
.eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseMaterialInfo::getActiveFlag, bo.getActiveFlag()) .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; return lqw;
} }
@ -120,7 +122,7 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
/** /**
* *
*/ */
private void validEntityBeforeSave(BaseMaterialInfo entity){ private void validEntityBeforeSave(BaseMaterialInfo entity) {
//TODO 做一些数据校验,如唯一约束 //TODO 做一些数据校验,如唯一约束
} }
@ -133,7 +135,7 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService {
*/ */
@Override @Override
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
if(isValid){ if (isValid) {
//TODO 做一些业务上的校验,判断是否需要校验 //TODO 做一些业务上的校验,判断是否需要校验
} }
return baseMapper.deleteByIds(ids) > 0; return baseMapper.deleteByIds(ids) > 0;

@ -9,7 +9,7 @@ import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.dromara.oa.base.domain.BaseMaterielInfo; import org.dromara.oa.base.domain.BaseMaterialInfo;
import org.dromara.oa.crm.domain.CrmCustomerInfo; import org.dromara.oa.crm.domain.CrmCustomerInfo;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.dromara.oa.base.domain.bo.BaseRelationMaterielBo; import org.dromara.oa.base.domain.bo.BaseRelationMaterielBo;
@ -75,16 +75,13 @@ public class BaseRelationMaterielServiceImpl implements IBaseRelationMaterielSer
Map<String, Object> params = bo.getParams(); Map<String, Object> params = bo.getParams();
MPJLambdaWrapper<BaseRelationMateriel> lqw = JoinWrappers.lambda(BaseRelationMateriel.class) MPJLambdaWrapper<BaseRelationMateriel> lqw = JoinWrappers.lambda(BaseRelationMateriel.class)
.selectAll(BaseRelationMateriel.class) .selectAll(BaseRelationMateriel.class)
.select(BaseMaterielInfo::getMaterielCode) .select(BaseMaterialInfo::getMaterialCode)
.select(BaseMaterielInfo::getMaterielName) .select(BaseMaterialInfo::getMaterialName)
.select(CrmCustomerInfo::getCustomerName) .select(CrmCustomerInfo::getCustomerName)
.leftJoin(BaseMaterielInfo.class, BaseMaterielInfo::getMaterielId, BaseRelationMateriel::getMaterielId)
.leftJoin(CrmCustomerInfo.class, CrmCustomerInfo::getCustomerId, BaseRelationMateriel::getCustomerId)
.eq(bo.getMaterielId() != null, BaseRelationMateriel::getMaterielId, bo.getMaterielId())
.eq(bo.getCustomerId() != null, BaseRelationMateriel::getCustomerId, bo.getCustomerId()) .eq(bo.getCustomerId() != null, BaseRelationMateriel::getCustomerId, bo.getCustomerId())
.like(StringUtils.isNotBlank(bo.getMaterielCode()), BaseMaterielInfo::getMaterielCode, bo.getMaterielCode()) .like(StringUtils.isNotBlank(bo.getMaterialCode()), BaseMaterialInfo::getMaterialCode, bo.getMaterialCode())
.like(StringUtils.isNotBlank(bo.getMaterielName()), BaseMaterielInfo::getMaterielName, bo.getMaterielName()) .like(StringUtils.isNotBlank(bo.getMaterialName()), BaseMaterialInfo::getMaterialName, bo.getMaterialName())
.like(StringUtils.isNotBlank(bo.getCustomerName()), CrmCustomerInfo::getCustomerName, bo.getCustomerName())
.like(StringUtils.isNotBlank(bo.getSaleMaterielName()), BaseRelationMateriel::getSaleMaterielName, bo.getSaleMaterielName()) .like(StringUtils.isNotBlank(bo.getSaleMaterielName()), BaseRelationMateriel::getSaleMaterielName, bo.getSaleMaterielName())
.eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseRelationMateriel::getActiveFlag, bo.getActiveFlag()); .eq(StringUtils.isNotBlank(bo.getActiveFlag()), BaseRelationMateriel::getActiveFlag, bo.getActiveFlag());
return lqw; return lqw;
@ -102,7 +99,6 @@ public class BaseRelationMaterielServiceImpl implements IBaseRelationMaterielSer
validEntityBeforeSave(add); validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0; boolean flag = baseMapper.insert(add) > 0;
if (flag) { if (flag) {
bo.setRelationMaterielId(add.getRelationMaterielId());
} }
return flag; return flag;
} }

Loading…
Cancel
Save