Browse Source

fix:新增车间管理的增删改查和导出表格的功能

kgy 8 months ago
parent
commit
316b3a33fb

+ 38 - 3
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/controller/WorkShopController.java

@@ -1,15 +1,50 @@
 package org.dromara.dataManagement.controller;
 
+import cn.dev33.satoken.annotation.SaIgnore;
+import cn.hutool.core.collection.CollUtil;
+import jakarta.servlet.http.HttpServletResponse;
 import lombok.RequiredArgsConstructor;
+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.dromara.dataManagement.domain.bo.WorkShopBo;
+import org.dromara.dataManagement.domain.vo.WorkShopVo;
 import org.dromara.dataManagement.service.WorkShopService;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
 
+import java.util.HashMap;
+
+@SaIgnore
 @RestController
 @RequiredArgsConstructor
 @RequestMapping("/dataManagement/workshop")
 public class WorkShopController extends BaseController {
     private final WorkShopService workShopService;
-
+    @GetMapping("/PageList")
+    public TableDataInfo<WorkShopVo> selectPageWorkshopList(WorkShopBo workshopBo, PageQuery pageQuery) {
+        return workShopService.selectPageWorkshopList(workshopBo, pageQuery);
+    }
+    @PostMapping()
+    public R<Void> insertWorkShop(@Validated @RequestBody WorkShopBo workshopBo){
+        return toAjax(workShopService.insertWorkShop(workshopBo));
+    }
+    @PutMapping()
+    public R<Void> updateWorkShop(@Validated @RequestBody WorkShopBo workshopBo){
+        return toAjax(workShopService.updateWorkShop(workshopBo));
+    }
+    @DeleteMapping("/{workshopIds}")
+    public R<Void> deleteWorkShopByIds(@PathVariable Long[] workshopIds){
+        return toAjax(workShopService.deleteWorkShopByIds(workshopIds));
+    }
+    @GetMapping("/exportExcel")
+    public void exportWorkShopExcel(HttpServletResponse response){
+        ExcelUtil.exportTemplate(CollUtil.newArrayList(new HashMap<>(),workShopService.selectList()),"车间列表.xlsx","excel/车间导出模板.xlsx",response);
+    }
+    @GetMapping("/exportExcelByIds")
+    public void exportWorkShopExcel(@RequestParam("ids")Long[] workshopIds,HttpServletResponse response){
+        ExcelUtil.exportTemplate(CollUtil.newArrayList(new HashMap<>(),workShopService.selectWorkshopListByIds(workshopIds)),"车间列表.xlsx","excel/车间导出模板.xlsx",response);
+    }
 }

+ 5 - 16
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/domain/WorkShop.java

@@ -1,23 +1,20 @@
 package org.dromara.dataManagement.domain;
-
 import com.baomidou.mybatisplus.annotation.TableName;
 import jakarta.validation.constraints.NotBlank;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import org.dromara.common.tenant.core.TenantEntity;
 
 @Data
-@EqualsAndHashCode(callSuper = true)
+//@EqualsAndHashCode(callSuper = true)
 @TableName("fa_kuyou_workshop")
-public class WorkShop extends TenantEntity {
+public class WorkShop {
     /**
      * 车间id
      */
-    @NotBlank(message = "编号不能为空")
-    private long id;
+    private int id;
     /**
      * 车间编号
      */
+    @NotBlank(message = "编号不能为空")
     private String code;
     /**
      * 车间名称
@@ -27,13 +24,5 @@ public class WorkShop extends TenantEntity {
     /**
      * 状态:0=关闭,1=正常
      */
-    private int status;
-    /**
-     * 创建时间
-     */
-    private String createtime;
-    /**
-     * 更新时间
-     */
-    private String updatetime;
+    private String status;
 }

+ 3 - 14
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/domain/bo/WorkShopBo.java

@@ -1,7 +1,6 @@
 package org.dromara.dataManagement.domain.bo;
 
 import io.github.linpeilie.annotations.AutoMapper;
-import jakarta.validation.constraints.NotBlank;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
@@ -9,13 +8,12 @@ import org.dromara.dataManagement.domain.WorkShop;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = WorkShop.class, reverseConvertGenerate = false)
+@AutoMapper(target = WorkShop.class,reverseConvertGenerate = false)
 public class WorkShopBo extends BaseEntity {
     /**
      * 车间id
      */
-    @NotBlank(message = "编号不能为空")
-    private long id;
+    private int id;
     /**
      * 车间编号
      */
@@ -23,18 +21,9 @@ public class WorkShopBo extends BaseEntity {
     /**
      * 车间名称
      */
-    @NotBlank(message = "名称不能为空")
     private String name;
     /**
      * 状态:0=关闭,1=正常
      */
-    private int status;
-    /**
-     * 创建时间
-     */
-    private String createtime;
-    /**
-     * 更新时间
-     */
-    private String updatetime;
+    private String status;
 }

+ 2 - 5
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/domain/vo/WorkShopVo.java

@@ -1,7 +1,6 @@
 package org.dromara.dataManagement.domain.vo;
 
 import io.github.linpeilie.annotations.AutoMapper;
-import jakarta.validation.constraints.NotBlank;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
@@ -14,8 +13,7 @@ public class WorkShopVo extends BaseEntity {
     /**
      * 车间id
      */
-    @NotBlank(message = "编号不能为空")
-    private long id;
+    private int id;
     /**
      * 车间编号
      */
@@ -23,12 +21,11 @@ public class WorkShopVo extends BaseEntity {
     /**
      * 车间名称
      */
-    @NotBlank(message = "名称不能为空")
     private String name;
     /**
      * 状态:0=关闭,1=正常
      */
-    private int status;
+    private String status;
     /**
      * 创建时间
      */

+ 14 - 0
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/service/WorkShopService.java

@@ -1,4 +1,18 @@
 package org.dromara.dataManagement.service;
 
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.dataManagement.domain.WorkShop;
+import org.dromara.dataManagement.domain.bo.WorkShopBo;
+import org.dromara.dataManagement.domain.vo.WorkShopVo;
+
+import java.util.List;
+
 public interface WorkShopService {
+    TableDataInfo<WorkShopVo> selectPageWorkshopList(WorkShopBo workshopBo, PageQuery pageQuery);
+    int insertWorkShop(WorkShopBo workshopBo);
+    int updateWorkShop(WorkShopBo workshopBo);
+    int deleteWorkShopByIds(Long[] workshopIds);
+    List<WorkShop> selectList();
+    List<WorkShop> selectWorkshopListByIds(Long[] workshopIds);
 }

+ 49 - 1
ruoyi-modules/ruoyi-dataManagement/src/main/java/org/dromara/dataManagement/service/impl/WorkShopServiceImpl.java

@@ -1,10 +1,58 @@
 package org.dromara.dataManagement.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.RequiredArgsConstructor;
+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.dromara.dataManagement.domain.WorkShop;
+import org.dromara.dataManagement.domain.bo.WorkShopBo;
+import org.dromara.dataManagement.domain.vo.WorkShopVo;
+import org.dromara.dataManagement.mapper.WorkShopMapper;
 import org.dromara.dataManagement.service.WorkShopService;
 import org.springframework.stereotype.Service;
 
+import java.util.Arrays;
+import java.util.List;
+
 @Service
 @RequiredArgsConstructor
 public class WorkShopServiceImpl implements WorkShopService {
-}
+    private final WorkShopMapper workShopMapper;
+
+    @Override
+    public TableDataInfo<WorkShopVo> selectPageWorkshopList(WorkShopBo workshopBo, PageQuery pageQuery) {
+        QueryWrapper<WorkShop> qw=new QueryWrapper<>();
+        qw.like(null!=workshopBo.getCode(),"code",workshopBo.getCode());
+        qw.like(null!=workshopBo.getName(),"name",workshopBo.getName());
+        qw.eq(StringUtils.isNotBlank(workshopBo.getStatus()),"status",workshopBo.getStatus());
+        Page<WorkShopVo>page =workShopMapper.selectVoPage(pageQuery.build(),qw);
+        return TableDataInfo.build(page);
+    }
+    @Override
+    public int insertWorkShop(WorkShopBo workshopBo) {
+        WorkShop workShop= MapstructUtils.convert(workshopBo,WorkShop.class);
+        return workShopMapper.insert(workShop);
+    }
+    @Override
+    public int updateWorkShop(WorkShopBo workshopBo) {
+        WorkShop workShop= MapstructUtils.convert(workshopBo,WorkShop.class);
+        QueryWrapper<WorkShop> qw=new QueryWrapper<>();
+        qw.eq("id",workshopBo.getId());
+        return workShopMapper.updateById(workShop);
+    }
+    @Override
+    public int deleteWorkShopByIds(Long[] ids) {
+        return workShopMapper.deleteByIds(Arrays.asList(ids));
+    }
+    @Override
+    public List<WorkShop> selectWorkshopListByIds(Long[] workshopIds) {
+        return MapstructUtils.convert(workShopMapper.selectVoByIds(Arrays.asList(workshopIds)),WorkShop.class);
+    }
+    @Override
+    public List<WorkShop> selectList() {
+        return workShopMapper.selectList();
+    }
+    }

BIN
ruoyi-modules/ruoyi-dataManagement/src/main/resources/excel/车间导出模板.xlsx