Selaa lähdekoodia

feat:新增品牌组

qingwudarao 6 kuukautta sitten
vanhempi
säilyke
03736d01bf

+ 62 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/controller/BrandController.java

@@ -0,0 +1,62 @@
+package org.dromara.commodityManagement.controller;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.commodityManagement.domain.bo.BrandBo;
+import org.dromara.commodityManagement.domain.vo.BrandVo;
+import org.dromara.commodityManagement.service.BrandService;
+import org.dromara.common.core.domain.R;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.common.web.core.BaseController;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 品牌组
+ */
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/commodityManagement/brand")
+public class BrandController extends BaseController {
+    private final BrandService brandService;
+
+    /**
+     * 查询品牌列表
+     * @param brandBo 品牌Bo对象
+     * @param pageQuery 分页信息
+     * @return 查询结果
+     */
+    @GetMapping()
+    public TableDataInfo<BrandVo> selectPageBrandList(BrandBo brandBo, PageQuery pageQuery) {
+        return brandService.selectPageBrandList(brandBo, pageQuery);
+    }
+
+    /**
+     * 新增品牌
+     * @param brandBo 品牌Bo对象
+     * @return 新增结果
+     */
+    @PostMapping()
+    public R<Void> insertBrand(@RequestBody BrandBo brandBo) {
+        return toAjax(brandService.insertBrand(brandBo));
+    }
+
+    /**
+     * 修改品牌
+     * @param brandBo 品牌Bo对象
+     * @return 修改结果
+     */
+    @PutMapping()
+    public R<Void> updateBrand(@RequestBody BrandBo brandBo) {
+        return toAjax(brandService.updateBrand(brandBo));
+    }
+
+    /**
+     * 删除品牌
+     * @param brandId 品牌ID
+     * @return 删除结果
+     */
+    @DeleteMapping()
+    public R<Void> deleteBrandByIds(@RequestParam int brandId) {
+        return toAjax(brandService.deleteBrandById(brandId));
+    }
+}

+ 25 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/Brand.java

@@ -0,0 +1,25 @@
+package org.dromara.commodityManagement.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("fa_kuyou_item_name")
+public class Brand{
+    /**
+     * 品牌ID
+     */
+    @TableId("id")
+    private Long id;
+    /**
+     * 品牌名称
+     */
+    private String name;
+
+    /**
+     * 类型
+     * 1.款号 2.品牌组
+     */
+    private String type;
+}

+ 34 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/bo/BrandBo.java

@@ -0,0 +1,34 @@
+package org.dromara.commodityManagement.domain.bo;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.github.linpeilie.annotations.AutoMapper;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+import org.dromara.commodityManagement.domain.Brand;
+
+/**
+ * 品牌业务对象
+ */
+@Data
+@AutoMapper(target = Brand.class, reverseConvertGenerate = false)
+public class BrandBo {
+
+    /**
+     * 品牌ID
+     */
+    @TableId("id")
+    private Long id;
+
+    /**
+     * 品牌名称
+     */
+    private String name;
+
+    /**
+     * 类型
+     * 1.款号 2.品牌组
+     */
+    @NotBlank(message = "类型不能为空")
+    private String type;
+
+}

+ 26 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/vo/BrandVo.java

@@ -0,0 +1,26 @@
+package org.dromara.commodityManagement.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import org.dromara.commodityManagement.domain.Brand;
+
+@Data
+@AutoMapper(target = Brand.class)
+public class BrandVo {
+    /**
+     * 品牌ID
+     */
+    @TableId("id")
+    private Long id;
+    /**
+     * 品牌名称
+     */
+    private String name;
+
+    /**
+     * 类型
+     * 1.款号 2.品牌组
+     */
+    private String type;
+}

+ 9 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/mapper/BrandMapper.java

@@ -0,0 +1,9 @@
+package org.dromara.commodityManagement.mapper;
+
+import org.dromara.commodityManagement.domain.Brand;
+import org.dromara.commodityManagement.domain.vo.BrandVo;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+
+public interface BrandMapper extends BaseMapperPlus<Brand, BrandVo> {
+
+}

+ 16 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/service/BrandService.java

@@ -0,0 +1,16 @@
+package org.dromara.commodityManagement.service;
+
+import org.dromara.commodityManagement.domain.bo.BrandBo;
+import org.dromara.commodityManagement.domain.vo.BrandVo;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+
+public interface BrandService {
+    TableDataInfo<BrandVo> selectPageBrandList(BrandBo brandBo, PageQuery pageQuery);
+
+    int insertBrand(BrandBo brandBo);
+
+    int updateBrand(BrandBo brandBo);
+
+    int deleteBrandById(int brandId);
+}

+ 72 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/service/impl/BrandServiceImpl.java

@@ -0,0 +1,72 @@
+package org.dromara.commodityManagement.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.RequiredArgsConstructor;
+import org.dromara.commodityManagement.domain.Brand;
+import org.dromara.commodityManagement.domain.bo.BrandBo;
+import org.dromara.commodityManagement.domain.vo.BrandVo;
+import org.dromara.commodityManagement.mapper.BrandMapper;
+import org.dromara.commodityManagement.service.BrandService;
+import org.dromara.common.core.exception.ServiceException;
+import org.dromara.common.core.utils.MapstructUtils;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.springframework.stereotype.Service;
+
+@RequiredArgsConstructor
+@Service
+public class BrandServiceImpl implements BrandService {
+
+    private final BrandMapper brandMapper;
+
+    /**
+     * 查询品牌列表
+     * @param brand 品牌Bo对象
+     * @param pageQuery 查询条件
+     * @return 分页结果
+     */
+    @Override
+    public TableDataInfo<BrandVo> selectPageBrandList(BrandBo brand,PageQuery pageQuery) {
+        QueryWrapper<Brand> qw = new QueryWrapper<>();
+        qw.eq(StringUtils.isNotBlank(brand.getName()), "name", brand.getName());
+        qw.eq("type", "2");
+        Page<BrandVo> page = brandMapper.selectVoPage(pageQuery.build(), qw);
+        return TableDataInfo.build(page);
+    }
+
+    @Override
+    public int insertBrand(BrandBo brandBo) {
+        Brand brand = MapstructUtils.convert(brandBo, Brand.class);
+        validEntityBeforeSave(brand);
+        return brandMapper.insert(brand);
+    }
+
+    @Override
+    public int updateBrand(BrandBo brandBo) {
+        Brand brand = MapstructUtils.convert(brandBo, Brand.class);
+        validEntityBeforeSave(brand);
+        QueryWrapper<Brand> qw = new QueryWrapper<>();
+        qw.eq("id", brand.getId());
+        return brandMapper.update(brand,qw);
+    }
+
+    @Override
+    public int deleteBrandById(int brandId) {
+        return brandMapper.deleteById(brandId);
+    }
+
+    /**
+     * 保存前校验
+     * @param entity 实体对象
+     */
+    private void validEntityBeforeSave(Brand entity) {
+        if (!StringUtils.isNotEmpty(entity.getName())) {
+            throw new ServiceException("名称不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getType())) {
+            throw new ServiceException("类型不能为空!");
+        }
+    }
+
+}

+ 7 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/resources/mapper/BrandMapper.xml

@@ -0,0 +1,7 @@
+<?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="org.dromara.commodityManagement.mapper.BrandMapper">
+
+</mapper>