图库需求
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
package com.czg.service.account.mapper;
|
||||
|
||||
import com.czg.account.entity.PictureClassify;
|
||||
import com.mybatisflex.core.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 图片分类
|
||||
*
|
||||
* @author Tankaikai tankaikai@aliyun.com
|
||||
* @since 1.0 2025-02-26
|
||||
*/
|
||||
@Mapper
|
||||
public interface PictureClassifyMapper extends BaseMapper<PictureClassify> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.czg.service.account.mapper;
|
||||
|
||||
import com.czg.account.entity.PictureGallery;
|
||||
import com.mybatisflex.core.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 图库
|
||||
*
|
||||
* @author Tankaikai tankaikai@aliyun.com
|
||||
* @since 1.0 2025-02-26
|
||||
*/
|
||||
@Mapper
|
||||
public interface PictureGalleryMapper extends BaseMapper<PictureGallery> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
package com.czg.service.account.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.czg.account.dto.PictureClassifyDTO;
|
||||
import com.czg.account.entity.PictureClassify;
|
||||
import com.czg.account.service.PictureClassifyService;
|
||||
import com.czg.enums.DeleteEnum;
|
||||
import com.czg.enums.YesNoEnum;
|
||||
import com.czg.exception.CzgException;
|
||||
import com.czg.product.entity.ShopProdUnit;
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.service.account.mapper.PictureClassifyMapper;
|
||||
import com.czg.utils.PageUtil;
|
||||
import com.mybatisflex.core.query.QueryWrapper;
|
||||
import com.mybatisflex.core.update.UpdateChain;
|
||||
import com.mybatisflex.spring.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 图片分类
|
||||
*
|
||||
* @author Tankaikai tankaikai@aliyun.com
|
||||
* @since 1.0 2025-02-26
|
||||
*/
|
||||
@Service
|
||||
public class PictureClassifyServiceImpl extends ServiceImpl<PictureClassifyMapper, PictureClassify> implements PictureClassifyService {
|
||||
|
||||
private QueryWrapper buildQueryWrapper(PictureClassifyDTO param) {
|
||||
QueryWrapper queryWrapper = PageUtil.buildSortQueryWrapper();
|
||||
if (StrUtil.isNotEmpty(param.getName())) {
|
||||
queryWrapper.like(PictureClassify::getName, param.getName());
|
||||
}
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
queryWrapper.eq(PictureClassify::getShopId, shopId);
|
||||
queryWrapper.eq(PictureClassify::getIsDel, DeleteEnum.DELETED.value());
|
||||
queryWrapper.orderBy(PictureClassify::getSort, true);
|
||||
queryWrapper.orderBy(PictureClassify::getId, false);
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PictureClassifyDTO> getPictureClassifyList(PictureClassifyDTO param) {
|
||||
QueryWrapper queryWrapper = buildQueryWrapper(param);
|
||||
return super.listAs(queryWrapper, PictureClassifyDTO.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addPictureClassify(PictureClassifyDTO dto) {
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
boolean exists = super.exists(query().eq(PictureClassify::getName, dto.getName())
|
||||
.eq(PictureClassify::getShopId, shopId)
|
||||
.and(q -> {
|
||||
q.eq(PictureClassify::getShopId, shopId).or(q1 -> {
|
||||
q1.eq(PictureClassify::getShopId, 0).eq(ShopProdUnit::getIsSystem, YesNoEnum.YES.value());
|
||||
});
|
||||
})
|
||||
);
|
||||
if (exists) {
|
||||
throw new CzgException("图片分类已存在");
|
||||
}
|
||||
PictureClassify entity = BeanUtil.copyProperties(dto, PictureClassify.class);
|
||||
entity.setIsSystem(YesNoEnum.NO.value());
|
||||
entity.setShopId(shopId);
|
||||
super.save(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updatePictureClassify(PictureClassifyDTO dto) {
|
||||
checkPictureClassify(dto.getId());
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
dto.setShopId(shopId);
|
||||
boolean exists = super.exists(query().eq(PictureClassify::getName, dto.getName())
|
||||
.eq(PictureClassify::getShopId, shopId)
|
||||
.ne(PictureClassify::getId, dto.getId())
|
||||
.and(q -> {
|
||||
q.eq(PictureClassify::getShopId, shopId).or(q1 -> {
|
||||
q1.eq(PictureClassify::getShopId, 0).eq(ShopProdUnit::getIsSystem, YesNoEnum.YES.value());
|
||||
});
|
||||
})
|
||||
);
|
||||
if (exists) {
|
||||
throw new CzgException("图片分类已存在");
|
||||
}
|
||||
PictureClassify entity = BeanUtil.copyProperties(dto, PictureClassify.class);
|
||||
entity.setIsSystem(YesNoEnum.NO.value());
|
||||
super.updateById(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deletePictureClassify(Long id) {
|
||||
checkPictureClassify(id);
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
UpdateChain.of(PictureClassify.class)
|
||||
.set(PictureClassify::getIsDel, DeleteEnum.DELETED.value())
|
||||
.eq(PictureClassify::getShopId, shopId)
|
||||
.eq(PictureClassify::getId, id)
|
||||
.update();
|
||||
}
|
||||
|
||||
private void checkPictureClassify(Long id) {
|
||||
PictureClassify entity = super.getById(id);
|
||||
if (entity == null) {
|
||||
throw new CzgException("图片分类不存在");
|
||||
}
|
||||
if (entity.getIsSystem() == YesNoEnum.YES.value()) {
|
||||
throw new CzgException("系统预设分类不可操作");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package com.czg.service.account.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.czg.account.dto.PictureGalleryDTO;
|
||||
import com.czg.account.entity.PictureGallery;
|
||||
import com.czg.account.service.PictureGalleryService;
|
||||
import com.czg.enums.DeleteEnum;
|
||||
import com.czg.sa.StpKit;
|
||||
import com.czg.service.account.mapper.PictureGalleryMapper;
|
||||
import com.czg.utils.PageUtil;
|
||||
import com.mybatisflex.core.paginate.Page;
|
||||
import com.mybatisflex.core.query.QueryWrapper;
|
||||
import com.mybatisflex.core.update.UpdateChain;
|
||||
import com.mybatisflex.spring.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 图库
|
||||
*
|
||||
* @author Tankaikai tankaikai@aliyun.com
|
||||
* @since 1.0 2025-02-26
|
||||
*/
|
||||
@Service
|
||||
public class PictureGalleryServiceImpl extends ServiceImpl<PictureGalleryMapper, PictureGallery> implements PictureGalleryService {
|
||||
|
||||
private QueryWrapper buildQueryWrapper(PictureGalleryDTO param) {
|
||||
QueryWrapper queryWrapper = PageUtil.buildSortQueryWrapper();
|
||||
if (StrUtil.isNotEmpty(param.getUrl())) {
|
||||
queryWrapper.eq(PictureGallery::getUrl, param.getUrl());
|
||||
}
|
||||
if (ObjUtil.isNotNull(param.getPictureClassifyId())) {
|
||||
queryWrapper.eq(PictureGallery::getPictureClassifyId, param.getPictureClassifyId());
|
||||
}
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
queryWrapper.eq(PictureGallery::getShopId, shopId);
|
||||
queryWrapper.eq(PictureGallery::getIsDel, DeleteEnum.NORMAL.value());
|
||||
queryWrapper.orderBy(PictureGallery::getId, false);
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<PictureGalleryDTO> getPictureGalleryPage(PictureGalleryDTO param) {
|
||||
QueryWrapper queryWrapper = buildQueryWrapper(param);
|
||||
return super.pageAs(PageUtil.buildPage(), queryWrapper, PictureGalleryDTO.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addPictureGallery(PictureGalleryDTO dto) {
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
PictureGallery entity = BeanUtil.copyProperties(dto, PictureGallery.class);
|
||||
entity.setShopId(shopId);
|
||||
super.save(entity);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void deletePictureGallery(Long id) {
|
||||
Long shopId = StpKit.USER.getLoginIdAsLong();
|
||||
UpdateChain.of(PictureGallery.class)
|
||||
.set(PictureGallery::getIsDel, DeleteEnum.DELETED.value())
|
||||
.eq(PictureGallery::getShopId, shopId)
|
||||
.eq(PictureGallery::getId, id)
|
||||
.update();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.czg.service.account.mapper.PictureClassifyMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.czg.service.account.mapper.PictureGalleryMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -88,6 +88,7 @@ public class ShopProdUnitServiceImpl extends ServiceImpl<ShopProdUnitMapper, Sho
|
||||
|
||||
@Override
|
||||
public void updateShopProdUnit(ShopProdUnitDTO dto) {
|
||||
checkShopProdUnit(dto.getId());
|
||||
Long shopId = StpKit.USER.getShopId(0L);
|
||||
dto.setShopId(shopId);
|
||||
boolean exists = super.exists(query().eq(ShopProdUnit::getName, dto.getName())
|
||||
@@ -107,26 +108,14 @@ public class ShopProdUnitServiceImpl extends ServiceImpl<ShopProdUnitMapper, Sho
|
||||
|
||||
@Override
|
||||
public void deleteShopProdUnit(Long id) {
|
||||
ShopProdUnit entity = super.getById(id);
|
||||
if (entity == null) {
|
||||
throw new CzgException("单位信息不存在");
|
||||
}
|
||||
if (entity.getIsSystem() == YesNoEnum.YES.value()) {
|
||||
throw new CzgException("系统预设单位不可操作");
|
||||
}
|
||||
checkShopProdUnit(id);
|
||||
Long shopId = StpKit.USER.getShopId(0L);
|
||||
super.remove(query().eq(ShopProdUnit::getId, id).eq(ShopProdUnit::getShopId, shopId));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disableShopProdUnit(Long id) {
|
||||
ShopProdUnit entity = super.getById(id);
|
||||
if (entity == null) {
|
||||
throw new CzgException("单位信息不存在");
|
||||
}
|
||||
if (entity.getIsSystem() == YesNoEnum.YES.value()) {
|
||||
throw new CzgException("系统预设单位不可操作");
|
||||
}
|
||||
checkShopProdUnit(id);
|
||||
Long shopId = StpKit.USER.getShopId(0L);
|
||||
UpdateChain.of(ShopProdUnit.class)
|
||||
.set(ShopProdUnit::getStatus, StatusEnum.DISABLE.value())
|
||||
@@ -137,13 +126,7 @@ public class ShopProdUnitServiceImpl extends ServiceImpl<ShopProdUnitMapper, Sho
|
||||
|
||||
@Override
|
||||
public void enableShopProdUnit(Long id) {
|
||||
ShopProdUnit entity = super.getById(id);
|
||||
if (entity == null) {
|
||||
throw new CzgException("单位信息不存在");
|
||||
}
|
||||
if (entity.getIsSystem() == YesNoEnum.YES.value()) {
|
||||
throw new CzgException("系统预设单位不可操作");
|
||||
}
|
||||
checkShopProdUnit(id);
|
||||
Long shopId = StpKit.USER.getShopId(0L);
|
||||
UpdateChain.of(ShopProdUnit.class)
|
||||
.set(ShopProdUnit::getStatus, StatusEnum.ENABLED.value())
|
||||
@@ -151,4 +134,14 @@ public class ShopProdUnitServiceImpl extends ServiceImpl<ShopProdUnitMapper, Sho
|
||||
.eq(ShopProdUnit::getShopId, shopId)
|
||||
.update();
|
||||
}
|
||||
|
||||
private void checkShopProdUnit(Long id) {
|
||||
ShopProdUnit entity = super.getById(id);
|
||||
if (entity == null) {
|
||||
throw new CzgException("单位信息不存在");
|
||||
}
|
||||
if (entity.getIsSystem() == YesNoEnum.YES.value()) {
|
||||
throw new CzgException("系统预设单位不可操作");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user