Browse Source

feat:定义溶液、矿石、工艺接口,创建相应的文件

master
白凤吉 6 months ago
parent
commit
b0bbdc487e
  1. 27
      sql/demo.sql
  2. 59
      src/main/java/com/qyft/gd/controller/CraftsController.java
  3. 50
      src/main/java/com/qyft/gd/controller/OresController.java
  4. 74
      src/main/java/com/qyft/gd/controller/SolutionsController.java
  5. 13
      src/main/java/com/qyft/gd/mapper/CraftsMapper.java
  6. 13
      src/main/java/com/qyft/gd/mapper/OresMapper.java
  7. 15
      src/main/java/com/qyft/gd/mapper/SolutionsMapper.java
  8. 26
      src/main/java/com/qyft/gd/model/entity/Crafts.java
  9. 21
      src/main/java/com/qyft/gd/model/entity/Ores.java
  10. 20
      src/main/java/com/qyft/gd/model/entity/Solutions.java
  11. 22
      src/main/java/com/qyft/gd/model/vo/CraftsListVO.java
  12. 11
      src/main/java/com/qyft/gd/service/CraftsService.java
  13. 12
      src/main/java/com/qyft/gd/service/OresService.java
  14. 18
      src/main/java/com/qyft/gd/service/SolutionsService.java
  15. 21
      src/main/java/com/qyft/gd/service/impl/CraftsServiceImpl.java
  16. 18
      src/main/java/com/qyft/gd/service/impl/OresServiceImpl.java
  17. 44
      src/main/java/com/qyft/gd/service/impl/SolutionsServiceImpl.java
  18. 6
      src/main/resources/mapper/CraftsMapper.xml
  19. 6
      src/main/resources/mapper/OresMapper.xml
  20. 8
      src/main/resources/mapper/SolutionsMapper.xml

27
sql/demo.sql

@ -62,3 +62,30 @@ VALUES
(13, 12, '溶液量低提示', 'sys_setting_volume', '300', '', '' ),
(14, 12, '异常处理区', 'sys_setting_abnormal_area', '7' , '', ''),
(15, 12, '设备信息', 'sys_setting_info', '12345' , '', '');
-- 创建 solutions 溶液 表
CREATE TABLE IF NOT EXISTS solutions (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建 ores 矿石 表
CREATE TABLE IF NOT EXISTS ores (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- 创建 crafts 工艺 表
CREATE TABLE IF NOT EXISTS crafts (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR NOT NULL,
steps TEXT,
ores_id INTEGER,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

59
src/main/java/com/qyft/gd/controller/CraftsController.java

@ -0,0 +1,59 @@
package com.qyft.gd.controller;
import com.qyft.gd.model.entity.Crafts;
import com.qyft.gd.model.vo.CraftsListVO;
import com.qyft.gd.service.CraftsService;
import com.qyft.gd.system.common.base.BasePageQuery;
import com.qyft.gd.system.common.result.PageResult;
import com.qyft.gd.system.common.result.Result;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
@Tag(name = "工艺管理")
@RestController
@RequestMapping("/api/crafts")
@RequiredArgsConstructor
@Slf4j
public class CraftsController {
private final CraftsService craftsService;
@Operation(summary = "工艺列表")
@GetMapping("/list")
public PageResult<CraftsListVO> getAllCrafts(BasePageQuery pageQuery) {
return PageResult.success(null);
}
@Operation(summary = "添加新工艺")
@PostMapping("/")
public Result<String> addCrafts(@RequestBody Crafts crafts) {
return Result.success();
}
@Operation(summary = "更新工艺")
@PutMapping("/{id}")
public Result<String> updateCrafts(@PathVariable Long id, @RequestBody Crafts crafts) {
return Result.success();
}
@Operation(summary = "删除工艺")
@DeleteMapping("/{ids}")
public Result<String> deleteCrafts(@Parameter(description = "工艺ID,多个以英文逗号(,)分割") @PathVariable String ids) {
return Result.success();
}
@Operation(summary = "开始执行工艺")
@PostMapping("/start")
public Result<String> startCrafts(@Parameter(description = "工艺id") @RequestParam Long craftId, @Parameter(description = "加热区idid") @RequestParam Long heatId) {
return Result.success();
}
@Operation(summary = "停止执行工艺")
@PostMapping("/stop")
public Result<String> stopCrafts(@Parameter(description = "加热区id") @RequestParam Long heatId) {
return Result.success();
}
}

50
src/main/java/com/qyft/gd/controller/OresController.java

@ -0,0 +1,50 @@
package com.qyft.gd.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qyft.gd.model.entity.Ores;
import com.qyft.gd.service.OresService;
import com.qyft.gd.system.common.base.BasePageQuery;
import com.qyft.gd.system.common.result.PageResult;
import com.qyft.gd.system.common.result.Result;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
@Tag(name = "矿石管理")
@RestController
@RequestMapping("/api/ores")
@RequiredArgsConstructor
@Slf4j
public class OresController {
private final OresService oresService;
@Operation(summary = "矿石列表")
@GetMapping("/list")
public PageResult<Ores> getAllOres(BasePageQuery pageQuery) {
IPage<Ores> result = oresService.page(new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()), null);
return PageResult.success(result);
}
@Operation(summary = "添加新矿石")
@PostMapping("/")
public Result<String> addOres(@RequestBody Ores ores) {
return Result.success();
}
@Operation(summary = "更新矿石")
@PutMapping("/{id}")
public Result<String> updateOres(@PathVariable Long id, @RequestBody Ores ores) {
return Result.success();
}
@Operation(summary = "删除矿石")
@DeleteMapping("/{ids}")
public Result<String> deleteOres(@Parameter(description = "矿工是ID,多个以英文逗号(,)分割") @PathVariable String ids) {
return Result.success();
}
}

74
src/main/java/com/qyft/gd/controller/SolutionsController.java

@ -0,0 +1,74 @@
package com.qyft.gd.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qyft.gd.model.entity.Solutions;
import com.qyft.gd.service.SolutionsService;
import com.qyft.gd.system.common.base.BasePageQuery;
import com.qyft.gd.system.common.result.PageResult;
import com.qyft.gd.system.common.result.Result;
import com.qyft.gd.system.common.result.ResultCode;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
@Tag(name = "溶液管理")
@RestController
@RequestMapping("/api/sols")
@RequiredArgsConstructor
@Slf4j
public class SolutionsController {
private final SolutionsService solutionsService;
@Operation(summary = "溶液列表")
@GetMapping("/list")
public PageResult<Solutions> getAllSols(BasePageQuery pageQuery) {
IPage<Solutions> result = solutionsService.page(new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()), null);
return PageResult.success(result);
}
@Operation(summary = "添加新溶液")
@PostMapping("/")
public Result<String> addSolutions(@RequestBody Solutions solutions) {
Solutions existingSolutions = solutionsService.findByName(solutions.getName());
if (existingSolutions == null) {
boolean isSuccess = solutionsService.addSolutions(solutions);
if (isSuccess) {
return Result.success();
}
} else {
return Result.failed(ResultCode.DATA_ALREADY_EXISTS);
}
return Result.failed();
}
@Operation(summary = "更新溶液")
@PutMapping("/{id}")
public Result<String> updateSolutions(@PathVariable Long id, @RequestBody Solutions solutions) {
Solutions existingSolutions = solutionsService.findByName(solutions.getName());
if (existingSolutions == null) {
solutions.setId(id);
boolean isSuccess = solutionsService.updateSolutions(solutions);
if (isSuccess) {
return Result.success();
}
} else {
return Result.failed(ResultCode.DATA_ALREADY_EXISTS);
}
return Result.failed();
}
@Operation(summary = "删除溶液")
@DeleteMapping("/{ids}")
public Result<String> deleteUser(@Parameter(description = "溶液ID,多个以英文逗号(,)分割") @PathVariable String ids) {
boolean isSuccess = solutionsService.deleteSolutions(ids);
if (isSuccess) {
return Result.success();
}
return Result.failed();
}
}

13
src/main/java/com/qyft/gd/mapper/CraftsMapper.java

@ -0,0 +1,13 @@
package com.qyft.gd.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qyft.gd.model.entity.Crafts;
import org.apache.ibatis.annotations.Mapper;
/**
* 工艺持久层接口
*/
@Mapper
public interface CraftsMapper extends BaseMapper<Crafts> {
}

13
src/main/java/com/qyft/gd/mapper/OresMapper.java

@ -0,0 +1,13 @@
package com.qyft.gd.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qyft.gd.model.entity.Ores;
import org.apache.ibatis.annotations.Mapper;
/**
* 矿石持久层接口
*/
@Mapper
public interface OresMapper extends BaseMapper<Ores> {
}

15
src/main/java/com/qyft/gd/mapper/SolutionsMapper.java

@ -0,0 +1,15 @@
package com.qyft.gd.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qyft.gd.model.entity.Solutions;
import com.qyft.gd.system.model.entity.User;
import org.apache.ibatis.annotations.Mapper;
/**
* 溶液持久层接口
*/
@Mapper
public interface SolutionsMapper extends BaseMapper<Solutions> {
Solutions findByName(String name);
}

26
src/main/java/com/qyft/gd/model/entity/Crafts.java

@ -0,0 +1,26 @@
package com.qyft.gd.model.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qyft.gd.system.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Schema(description = "工艺")
@TableName("crafts")
@Data
public class Crafts extends BaseEntity {
@NotBlank
@Schema(description = "工艺名称")
private String name;
@Schema(description = "工艺步骤")
private String steps;
@Schema(description = "矿石ID")
private Integer oresId;
}

21
src/main/java/com/qyft/gd/model/entity/Ores.java

@ -0,0 +1,21 @@
package com.qyft.gd.model.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qyft.gd.system.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Schema(description = "矿石")
@TableName("ores")
@Data
public class Ores extends BaseEntity {
@NotBlank()
@Schema(description = "矿石名称")
private String name;
}

20
src/main/java/com/qyft/gd/model/entity/Solutions.java

@ -0,0 +1,20 @@
package com.qyft.gd.model.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qyft.gd.system.common.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@Schema(description = "溶液")
@TableName("solutions")
@Data
public class Solutions extends BaseEntity {
@NotBlank()
@Schema(description = "溶液名称")
private String name;
}

22
src/main/java/com/qyft/gd/model/vo/CraftsListVO.java

@ -0,0 +1,22 @@
package com.qyft.gd.model.vo;
import com.qyft.gd.model.entity.Crafts;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Schema(description = "工艺视图")
@Data
public class CraftsListVO {
@Schema(description = "矿石id")
private String oresId;
@Schema(description = "矿石名称")
private String oresName;
@Schema(description = "该矿石下工艺列表")
private List<Crafts> craftsList;
}

11
src/main/java/com/qyft/gd/service/CraftsService.java

@ -0,0 +1,11 @@
package com.qyft.gd.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qyft.gd.model.entity.Crafts;
/**
* 工艺业务接口
*/
public interface CraftsService extends IService<Crafts> {
}

12
src/main/java/com/qyft/gd/service/OresService.java

@ -0,0 +1,12 @@
package com.qyft.gd.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qyft.gd.model.entity.Ores;
import com.qyft.gd.model.entity.Solutions;
/**
* 矿石业务接口
*/
public interface OresService extends IService<Ores> {
}

18
src/main/java/com/qyft/gd/service/SolutionsService.java

@ -0,0 +1,18 @@
package com.qyft.gd.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qyft.gd.model.entity.Solutions;
/**
* 溶液业务接口
*/
public interface SolutionsService extends IService<Solutions> {
Solutions findByName(String name);
boolean addSolutions(Solutions solutions);
boolean updateSolutions(Solutions solutions);
boolean deleteSolutions(String idsStr);
}

21
src/main/java/com/qyft/gd/service/impl/CraftsServiceImpl.java

@ -0,0 +1,21 @@
package com.qyft.gd.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qyft.gd.mapper.CraftsMapper;
import com.qyft.gd.mapper.OresMapper;
import com.qyft.gd.model.entity.Crafts;
import com.qyft.gd.model.entity.Ores;
import com.qyft.gd.service.CraftsService;
import com.qyft.gd.service.OresService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
/**
* 工艺业务实现类
*/
@Service
@RequiredArgsConstructor
public class CraftsServiceImpl extends ServiceImpl<CraftsMapper, Crafts> implements CraftsService {
}

18
src/main/java/com/qyft/gd/service/impl/OresServiceImpl.java

@ -0,0 +1,18 @@
package com.qyft.gd.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qyft.gd.mapper.OresMapper;
import com.qyft.gd.model.entity.Ores;
import com.qyft.gd.service.OresService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
/**
* 矿石业务实现类
*/
@Service
@RequiredArgsConstructor
public class OresServiceImpl extends ServiceImpl<OresMapper, Ores> implements OresService {
}

44
src/main/java/com/qyft/gd/service/impl/SolutionsServiceImpl.java

@ -0,0 +1,44 @@
package com.qyft.gd.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qyft.gd.mapper.SolutionsMapper;
import com.qyft.gd.model.entity.Solutions;
import com.qyft.gd.service.SolutionsService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
* 溶液业务实现类
*/
@Service
@RequiredArgsConstructor
public class SolutionsServiceImpl extends ServiceImpl<SolutionsMapper, Solutions> implements SolutionsService {
@Override
public Solutions findByName(String name) {
this.baseMapper.findByName(name);
return null;
}
@Override
public boolean addSolutions(Solutions solutions) {
return this.baseMapper.insert(solutions) > 0;
}
@Override
public boolean updateSolutions(Solutions solutions) {
return this.baseMapper.updateById(solutions) > 0;
}
@Override
public boolean deleteSolutions(String idsStr) {
List<Long> ids = Arrays.stream(idsStr.split(","))
.map(Long::parseLong)
.collect(Collectors.toList());
return this.removeByIds(ids);
}
}

6
src/main/resources/mapper/CraftsMapper.xml

@ -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.qyft.gd.mapper.CraftsMapper">
</mapper>

6
src/main/resources/mapper/OresMapper.xml

@ -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.qyft.gd.mapper.OresMapper">
</mapper>

8
src/main/resources/mapper/SolutionsMapper.xml

@ -0,0 +1,8 @@
<?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.qyft.gd.mapper.SolutionsMapper">
<select id="findByName" resultType="com.qyft.gd.model.entity.Solutions">
SELECT * FROM solutions WHERE name = #{name}
</select>
</mapper>
Loading…
Cancel
Save