|
@@ -0,0 +1,100 @@
|
|
|
+package com.sd.business.service.sku.impl;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.ruoyi.common.core.domain.BaseIdPo;
|
|
|
+import com.ruoyi.common.core.domain.BasePo;
|
|
|
+import com.ruoyi.common.utils.SecurityUtils;
|
|
|
+import com.sd.business.entity.bom.po.BomSpec;
|
|
|
+import com.sd.business.entity.sku.dto.SkuUserDto;
|
|
|
+import com.sd.business.entity.sku.dto.SkuUserSelectDto;
|
|
|
+import com.sd.business.entity.sku.po.SkuUser;
|
|
|
+import com.sd.business.entity.sku.vo.SkuUserVo;
|
|
|
+import com.sd.business.mapper.sku.SkuUserMapper;
|
|
|
+import com.sd.business.service.sku.SkuUserService;
|
|
|
+import com.sd.framework.util.Assert;
|
|
|
+import com.sd.framework.util.sql.Sql;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 用户专属sku 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author
|
|
|
+ * @since 2023-11-20
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class SkuUserServiceImpl extends ServiceImpl<SkuUserMapper, SkuUser> implements SkuUserService {
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<SkuUserVo> getPage(SkuUserSelectDto dto) {
|
|
|
+
|
|
|
+ Page<SkuUserVo> page = Sql.create(SkuUserVo.class)
|
|
|
+ .selectAll(SkuUser.class)
|
|
|
+ .selectAs(BomSpec::getCode, SkuUserVo::getBomSpecCode)
|
|
|
+ .selectAs(BomSpec::getName, SkuUserVo::getBomSpecName)
|
|
|
+
|
|
|
+ .from(SkuUser.class)
|
|
|
+ .leftJoin(BomSpec.class, BaseIdPo::getId, SkuUser::getBomSpecId)
|
|
|
+
|
|
|
+ .eq(SkuUser::getCreateUser, SecurityUtils.getUserId())
|
|
|
+ .like(SkuUser::getCode, dto.getCode())
|
|
|
+ .like(SkuUser::getName, dto.getName())
|
|
|
+ .orderByDesc(SkuUser::getId)
|
|
|
+ .page(dto.getPage());
|
|
|
+
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SkuUserVo detail(Long id) {
|
|
|
+
|
|
|
+ SkuUserVo vo = Sql.create(SkuUserVo.class)
|
|
|
+ .selectAll(SkuUser.class)
|
|
|
+ .selectAs(BomSpec::getCode, SkuUserVo::getBomSpecCode)
|
|
|
+ .selectAs(BomSpec::getName, SkuUserVo::getBomSpecName)
|
|
|
+
|
|
|
+ .from(SkuUser.class)
|
|
|
+ .leftJoin(BomSpec.class, BaseIdPo::getId, SkuUser::getBomSpecId)
|
|
|
+
|
|
|
+ .eq(SkuUser::getId, id)
|
|
|
+ .one();
|
|
|
+
|
|
|
+ Assert.notNull(vo, "未知sku");
|
|
|
+
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void add(SkuUserDto dto) {
|
|
|
+
|
|
|
+ long count = count(q -> q.eq(BasePo::getCreateUser, SecurityUtils.getUserId())
|
|
|
+ .eq(SkuUser::getCode, dto.getCode())
|
|
|
+ .last("limit 1"));
|
|
|
+
|
|
|
+ Assert.eqZero(count, "sku编号已存在");
|
|
|
+
|
|
|
+ save(dto);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void edit(SkuUserDto dto) {
|
|
|
+
|
|
|
+ long count = count(q -> q.eq(BasePo::getCreateUser, SecurityUtils.getUserId())
|
|
|
+ .eq(SkuUser::getCode, dto.getCode())
|
|
|
+ .ne(BaseIdPo::getId, dto.getId())
|
|
|
+ .last("limit 1"));
|
|
|
+
|
|
|
+ Assert.eqZero(count, "sku编号已存在");
|
|
|
+
|
|
|
+ updateById(dto);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void delete(Long id) {
|
|
|
+ removeById(id);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|