|
@@ -9,8 +9,12 @@ import com.fjhx.admin.entity.product.po.ProductInfo;
|
|
import com.fjhx.admin.entity.product.vo.ProductInfoVo;
|
|
import com.fjhx.admin.entity.product.vo.ProductInfoVo;
|
|
import com.fjhx.admin.mapper.product.ProductInfoMapper;
|
|
import com.fjhx.admin.mapper.product.ProductInfoMapper;
|
|
import com.fjhx.admin.service.product.ProductInfoService;
|
|
import com.fjhx.admin.service.product.ProductInfoService;
|
|
|
|
+import com.fjhx.admin.utils.CodeEnum;
|
|
|
|
+import com.fjhx.file.util.ObsFileUtil;
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
|
+import com.ruoyi.common.utils.wrapper.SqlField;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -27,6 +31,13 @@ public class ProductInfoServiceImpl extends ServiceImpl<ProductInfoMapper, Produ
|
|
public Page<ProductInfoVo> getPage(ProductInfoSelectDto dto) {
|
|
public Page<ProductInfoVo> getPage(ProductInfoSelectDto dto) {
|
|
IWrapper<ProductInfo> wrapper = getWrapper();
|
|
IWrapper<ProductInfo> wrapper = getWrapper();
|
|
wrapper.orderByDesc("pi", ProductInfo::getId);
|
|
wrapper.orderByDesc("pi", ProductInfo::getId);
|
|
|
|
+ wrapper.eq("pi", ProductInfo::getType, dto.getType());
|
|
|
|
+ wrapper.eq("pi", ProductInfo::getProductClassifyId, dto.getProductClassifyId());
|
|
|
|
+ wrapper.keyword(dto,
|
|
|
|
+ new SqlField("pi", ProductInfo::getName),
|
|
|
|
+ new SqlField("pi", ProductInfo::getCode),
|
|
|
|
+ new SqlField("pi", ProductInfo::getCustomCode)
|
|
|
|
+ );
|
|
Page<ProductInfoVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
Page<ProductInfoVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
return page;
|
|
return page;
|
|
}
|
|
}
|
|
@@ -37,16 +48,30 @@ public class ProductInfoServiceImpl extends ServiceImpl<ProductInfoMapper, Produ
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Transactional
|
|
public void add(ProductInfoDto productInfoDto) {
|
|
public void add(ProductInfoDto productInfoDto) {
|
|
|
|
+ // 赋值产品编号
|
|
|
|
+ productInfoDto.setCode(CodeEnum.PRODUCT.getCode());
|
|
|
|
+ // 排除名称重复
|
|
|
|
+ this.nameDuplication(ProductInfo::getName, productInfoDto.getName(), "产品名称重复");
|
|
this.save(productInfoDto);
|
|
this.save(productInfoDto);
|
|
|
|
+ ObsFileUtil.saveFile(productInfoDto.getFileList(), productInfoDto.getId());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Transactional
|
|
public void edit(ProductInfoDto productInfoDto) {
|
|
public void edit(ProductInfoDto productInfoDto) {
|
|
|
|
+ // 禁止产品编号修改
|
|
|
|
+ productInfoDto.setCode(null);
|
|
|
|
+ // 排除名称重复
|
|
|
|
+ this.nameDuplication(ProductInfo::getName, productInfoDto.getName(), productInfoDto.getId(), "产品名称重复");
|
|
this.updateById(productInfoDto);
|
|
this.updateById(productInfoDto);
|
|
|
|
+ ObsFileUtil.editFile(productInfoDto.getFileList(), productInfoDto.getId());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Transactional
|
|
public void delete(Long id) {
|
|
public void delete(Long id) {
|
|
this.removeById(id);
|
|
this.removeById(id);
|
|
|
|
+ ObsFileUtil.removeFile(id);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|