Forráskód Böngészése

feat:新增底布管理

qingwudarao 6 hónapja
szülő
commit
1743766700

+ 86 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/controller/DiBuController.java

@@ -0,0 +1,86 @@
+package org.dromara.commodityManagement.controller;
+
+import cn.hutool.core.collection.CollUtil;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
+import org.dromara.commodityManagement.domain.bo.DiBuBo;
+import org.dromara.commodityManagement.domain.vo.DiBuVo;
+import org.dromara.commodityManagement.service.DiBuService;
+import org.dromara.common.core.domain.R;
+import org.dromara.common.excel.utils.ExcelUtil;
+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.*;
+
+import java.util.HashMap;
+
+/**
+ * 底布管理接口
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/commodityManagement/dibu")
+public class DiBuController extends BaseController {
+
+    private final DiBuService diBuService;
+
+    /**
+     * 获取底布列表
+     * @param diBu 底布BO对象
+     * @param pageQuery 条件分页
+     * @return 结果
+     */
+    @GetMapping("/list")
+    public TableDataInfo<DiBuVo> selectPageDiBuList(DiBuBo diBu, PageQuery pageQuery) {
+        return diBuService.selectPageDiBuList(diBu, pageQuery);
+    }
+
+    /**
+     * 新增底布
+     * @param diBuBo 底布BO对象
+     * @return 结果
+     */
+    @PostMapping()
+    public R<Void> insertDiBu(@RequestBody DiBuBo diBuBo) {
+        return toAjax(diBuService.insertDiBu(diBuBo));
+    }
+
+    /**
+     * 修改底布
+     * @param diBuBo 底布BO对象
+     * @return 影响行数
+     */
+    @PutMapping()
+    public R<Void> updateDiBu(@RequestBody DiBuBo diBuBo) {
+        return toAjax(diBuService.updateDiBu(diBuBo));
+    }
+
+    /**
+     * 删除底布
+     * @param diBuIds 底布Ids
+     * @return 影响行数
+     */
+    @DeleteMapping("/{diBuIds}")
+    public R<Void> deleteDiBuByIds(@PathVariable Long[] diBuIds) {
+        return toAjax(diBuService.deleteDiBuById(diBuIds));
+    }
+
+    /**
+     * 根据底布Ids导出Excel
+     * @param response 响应对象
+     */
+    @GetMapping("/exportExcelByIds")
+    public void exportDiBuExcel(@RequestParam("ids") Long[] diBuIds ,HttpServletResponse response) {
+        ExcelUtil.exportTemplate(CollUtil.newArrayList(new HashMap<>(),diBuService.selectDiBuListByIds(diBuIds)), "底布列表.xlsx","excel/底布导出模板.xlsx", response);
+    }
+
+    /**
+     * 通过Excel导出所有底布数据
+     * @param response 响应对象
+     */
+    @GetMapping("/exportExcel")
+    public void exportDiBuExcel(HttpServletResponse response) {
+        ExcelUtil.exportTemplate(CollUtil.newArrayList(new HashMap<>(),diBuService.selectDiBuList()), "底布列表.xlsx","excel/底布导出模板.xlsx", response);
+    }
+}

+ 107 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/DiBu.java

@@ -0,0 +1,107 @@
+package org.dromara.commodityManagement.domain;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+import java.math.BigInteger;
+
+/**
+ * 底布基类
+ */
+@Data
+@TableName("fa_kuyou_dibu")
+public class DiBu {
+
+    /**
+     * 底布ID
+     */
+    @TableId("id")
+    private Long id;
+
+    /**
+     * 租户ID
+     */
+    private Long tenant_id;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 颜色
+     */
+    private String color;
+
+    /**
+     * 门幅
+     */
+    private String menfu;
+
+    /**
+     * 克重
+     */
+    private String weight;
+
+    /**
+     * 单价
+     */
+    private String price;
+
+    /**
+     * 进货价
+     */
+    private double purchase_price;
+
+    /**
+     * 单位
+     */
+    private String unit;
+
+    /**
+     * 针织
+     */
+    private String zhenzhi;
+
+    /**
+     * 成分
+     */
+    private String chengfen;
+
+    /**
+     * 供应商
+     */
+    private String gongyingshang;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 单价2
+     */
+    private String price2;
+
+    /**
+     * 单位2
+     */
+    private String unit2;
+
+    /**
+     * 库存预警
+     */
+    private String stock_warn;
+
+    /**
+     * 库存
+     */
+    private double stock;
+
+    /**
+     * 库存1
+     */
+    private double stock1;
+}

+ 100 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/bo/DiBuBo.java

@@ -0,0 +1,100 @@
+package org.dromara.commodityManagement.domain.bo;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import org.dromara.commodityManagement.domain.DiBu;
+
+/**
+ * 底布业务对象
+ */
+@Data
+@AutoMapper(target = DiBu.class, reverseConvertGenerate = false)
+public class DiBuBo {
+
+    /**
+     * 底布Id
+     */
+    @TableId("id")
+    private Long id;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 颜色
+     */
+    private String color;
+
+    /**
+     * 门幅
+     */
+    private String menfu;
+
+    /**
+     * 克重
+     */
+    private String weight;
+
+    /**
+     * 单价
+     */
+    private String price;
+
+    /**
+     * 进货价
+     */
+    private double purchase_price;
+
+    /**
+     * 单位
+     */
+    private String unit;
+
+    /**
+     * 针织
+     */
+    private String zhenzhi;
+
+    /**
+     * 成分
+     */
+    private String chengfen;
+
+    /**
+     * 供应商
+     */
+    private String gongyingshang;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 价格2
+     */
+    private String price2;
+
+    /**
+     * 单位2
+     */
+    private String unit2;
+
+    /**
+     * 库存预警
+     */
+    private String stock_warn;
+
+    /**
+     * 库存
+     */
+    private double stock;
+
+    /**
+     * 库存1
+     */
+    private double stock1;
+}

+ 105 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/domain/vo/DiBuVo.java

@@ -0,0 +1,105 @@
+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.DiBu;
+
+/**
+ * 底布视图对象
+ */
+@Data
+@AutoMapper(target = DiBu.class)
+public class DiBuVo {
+
+    /**
+     * 底布ID
+     */
+    @TableId("id")
+    private Long id;
+
+    /**
+     * 租户ID
+     */
+    private Long tenant_id;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 颜色
+     */
+    private String color;
+
+    /**
+     * 门幅
+     */
+    private String menfu;
+
+    /**
+     * 克重
+     */
+    private String weight;
+
+    /**
+     * 单价
+     */
+    private String price;
+
+    /**
+     * 进货价
+     */
+    private double purchase_price;
+
+    /**
+     * 单位
+     */
+    private String unit;
+
+    /**
+     * 针织
+     */
+    private String zhenzhi;
+
+    /**
+     * 成分
+     */
+    private String chengfen;
+
+    /**
+     * 供应商
+     */
+    private String gongyingshang;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 价格2
+     */
+    private String price2;
+
+    /**
+     * 单位2
+     */
+    private String unit2;
+
+    /**
+     * 库存预警
+     */
+    private String stock_warn;
+
+    /**
+     * 库存
+     */
+    private double stock;
+
+    /**
+     * 库存1
+     */
+    private double stock1;
+}

+ 8 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/mapper/DiBuMapper.java

@@ -0,0 +1,8 @@
+package org.dromara.commodityManagement.mapper;
+
+import org.dromara.commodityManagement.domain.DiBu;
+import org.dromara.commodityManagement.domain.vo.DiBuVo;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+
+public interface DiBuMapper extends BaseMapperPlus<DiBu, DiBuVo> {
+}

+ 51 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/service/DiBuService.java

@@ -0,0 +1,51 @@
+package org.dromara.commodityManagement.service;
+
+import org.dromara.commodityManagement.domain.DiBu;
+import org.dromara.commodityManagement.domain.bo.DiBuBo;
+import org.dromara.commodityManagement.domain.vo.DiBuVo;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+
+import java.util.List;
+
+/**
+ * 底布Service接口
+ */
+public interface DiBuService {
+    /**
+     * 查询底布列表
+     * @param diBuBo 底布BO对象
+     * @param pageQuery 分页信息
+     * @return 分页结果
+     */
+    TableDataInfo<DiBuVo> selectPageDiBuList(DiBuBo diBuBo, PageQuery pageQuery);
+
+    /**
+     * 新增底布
+     * @param diBuBo 底布BO对象
+     * @return 影响行数
+     */
+    int insertDiBu(DiBuBo diBuBo);
+
+    /**
+     * 修改底布
+     * @param diBuBo 底布BO对象
+     * @return 影响行数
+     */
+    int updateDiBu(DiBuBo diBuBo);
+
+    /**
+     * 删除底布
+     * @param diBuId 底布ID
+     * @return 影响行数
+     */
+    int deleteDiBuById(Long[] diBuId);
+
+    /**
+     * 根据底布Ids查询底布列表
+     * @return 底布列表
+     */
+    List<DiBu> selectDiBuListByIds(Long[] diBuIds);
+
+    List<DiBu> selectDiBuList();
+}

+ 113 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/java/org/dromara/commodityManagement/service/impl/DiBuServiceImpl.java

@@ -0,0 +1,113 @@
+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.DiBu;
+import org.dromara.commodityManagement.domain.bo.DiBuBo;
+import org.dromara.commodityManagement.domain.vo.DiBuVo;
+import org.dromara.commodityManagement.mapper.DiBuMapper;
+import org.dromara.commodityManagement.service.DiBuService;
+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;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 底布管理服务实现
+ */
+@Service
+@RequiredArgsConstructor
+public class DiBuServiceImpl implements DiBuService {
+
+    private final DiBuMapper diBuMapper;
+
+    /**
+     * 根据底布对象查询底布数据
+     * @param diBuBo 底布BO对象
+     * @param pageQuery 分页参数
+     * @return
+     */
+    @Override
+    public TableDataInfo<DiBuVo> selectPageDiBuList(DiBuBo diBuBo, PageQuery pageQuery) {
+        QueryWrapper<DiBu> qw = new QueryWrapper<>();
+        qw.eq(StringUtils.isNotBlank(diBuBo.getName()), "name", diBuBo.getName());
+        Page<DiBuVo> page = diBuMapper.selectVoPage(pageQuery.build(), qw);
+        return TableDataInfo.build(page);
+    }
+
+    /**
+     * 新增底布
+     * @param diBuBo 底布BO对象
+     * @return 影响行数
+     */
+    @Override
+    public int insertDiBu(DiBuBo diBuBo) {
+        DiBu diBu = MapstructUtils.convert(diBuBo, DiBu.class);
+        validEntityBeforeSave(diBu);
+        return diBuMapper.insert(diBu);
+    }
+
+    /**
+     * 修改底布
+     * @param diBuBo 底布BO对象
+     * @return 影响行数
+     */
+    @Override
+    public int updateDiBu(DiBuBo diBuBo) {
+        DiBu diBu = MapstructUtils.convert(diBuBo, DiBu.class);
+        validEntityBeforeSave(diBu);
+        QueryWrapper<DiBu> qw  = new QueryWrapper<>();
+        qw.eq("id", diBu.getId());
+        return diBuMapper.update(diBu,qw);
+    }
+
+    /**
+     * 根据底布ID删除底布
+     * @param diBuId 底布ID
+     * @return 影响行数
+     */
+    @Override
+    public int deleteDiBuById(Long[] diBuId) {
+        return diBuMapper.deleteByIds(Arrays.asList(diBuId));
+    }
+
+    /**
+     * 查询底布列表
+     * @return 底布列表
+     */
+    @Override
+    public List<DiBu> selectDiBuListByIds(Long[] diBuIds) {
+        return MapstructUtils.convert(diBuMapper.selectVoByIds(Arrays.asList(diBuIds)), DiBu.class);
+    }
+
+    @Override
+    public List<DiBu> selectDiBuList() {
+        return diBuMapper.selectList();
+    }
+
+    /**
+     * 保存前校验数据
+     * @param entity 底布对象
+     */
+    private void validEntityBeforeSave(DiBu entity) {
+        if (!StringUtils.isNotEmpty(entity.getName())) {
+            throw new ServiceException("名称不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getColor())) {
+            throw new ServiceException("颜色不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getMenfu())) {
+            throw new ServiceException("门幅不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getWeight())) {
+            throw new ServiceException("克重不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getPrice())) {
+            throw new ServiceException("价格不能为空!");
+        } else if (!StringUtils.isNoneBlank(entity.getUnit())) {
+            throw new ServiceException("单位不能为空!");
+        }
+    }
+}

BIN
ruoyi-modules/ruoyi-commodityManagement/src/main/resources/excel/底布导出模板.xlsx


+ 7 - 0
ruoyi-modules/ruoyi-commodityManagement/src/main/resources/mapper/DiBuMapper.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.DiBuMapper">
+
+</mapper>