18 changed files with 293 additions and 36 deletions
-
35sql/demo.sql
-
24src/main/java/com/qyft/gd/controller/BaseDataController.java
-
12src/main/java/com/qyft/gd/controller/ContainerController.java
-
28src/main/java/com/qyft/gd/mapper/ContainerMapper.java
-
2src/main/java/com/qyft/gd/mapper/SysSettingsMapper.java
-
14src/main/java/com/qyft/gd/model/dto/BaseDataDTO.java
-
14src/main/java/com/qyft/gd/model/dto/ContainerDTO.java
-
4src/main/java/com/qyft/gd/model/dto/SysSettingsDTO.java
-
19src/main/java/com/qyft/gd/model/entity/Container.java
-
27src/main/java/com/qyft/gd/model/vo/BaseDataVO.java
-
16src/main/java/com/qyft/gd/model/vo/ContainerListVO.java
-
6src/main/java/com/qyft/gd/model/vo/SysSettingVO.java
-
57src/main/java/com/qyft/gd/service/BaseDataService.java
-
16src/main/java/com/qyft/gd/service/ContainerService.java
-
33src/main/java/com/qyft/gd/service/impl/ContainerServiceImpl.java
-
5src/main/java/com/qyft/gd/service/impl/SysSettingsServiceImpl.java
-
7src/main/resources/mapper/ContainerMapper.xml
-
10src/main/resources/mapper/SysSettingsMapper.xml
@ -0,0 +1,24 @@ |
|||
package com.qyft.gd.controller; |
|||
|
|||
import com.qyft.gd.model.vo.BaseDataVO; |
|||
import com.qyft.gd.service.BaseDataService; |
|||
import com.qyft.gd.system.common.result.Result; |
|||
import io.swagger.v3.oas.annotations.Operation; |
|||
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/baseData") |
|||
@RequiredArgsConstructor |
|||
@Slf4j |
|||
public class BaseDataController { |
|||
private final BaseDataService baseDataService; |
|||
@Operation(summary = "获取基础数据") |
|||
@GetMapping("/") |
|||
public Result<BaseDataVO> getAllBaseData() { |
|||
return Result.success(baseDataService.getBaseData()); |
|||
} |
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.qyft.gd.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.qyft.gd.model.dto.SysSettingsDTO; |
|||
import com.qyft.gd.model.entity.Container; |
|||
import com.qyft.gd.model.entity.SysSettings; |
|||
import com.qyft.gd.model.vo.ContainerListVO; |
|||
import com.qyft.gd.model.vo.SysSettingVO; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
import java.util.List; |
|||
|
|||
|
|||
/** |
|||
* <p> |
|||
* Mapper 接口 |
|||
* </p> |
|||
* |
|||
* @author 郭安鹏 |
|||
* @since 2025-02-18 |
|||
*/ |
|||
|
|||
@Mapper |
|||
public interface ContainerMapper extends BaseMapper<Container> { |
|||
|
|||
List<ContainerListVO> selectAll(); |
|||
} |
|||
|
@ -0,0 +1,14 @@ |
|||
package com.qyft.gd.model.dto; |
|||
|
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class BaseDataDTO { |
|||
@Schema(description = "加热区id") |
|||
private Long id; |
|||
@Schema(description = "温度") |
|||
private Long temperature; |
|||
@Schema(description = "工艺id") |
|||
private Long craftId; |
|||
} |
@ -0,0 +1,14 @@ |
|||
package com.qyft.gd.model.dto; |
|||
|
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class ContainerDTO { |
|||
@Schema(description = "容器id") |
|||
private Long id; |
|||
@Schema(description = "溶液id") |
|||
private Long solutionId; |
|||
@Schema(description = "已使用容量") |
|||
private Long capacityUsed; |
|||
} |
@ -0,0 +1,27 @@ |
|||
package com.qyft.gd.model.vo; |
|||
|
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.util.List; |
|||
|
|||
@EqualsAndHashCode(callSuper = false) |
|||
@Schema(description = "容器") |
|||
@Data |
|||
public class BaseDataVO { |
|||
@Schema(description = "加热区") |
|||
List<SysSettingVO> heat_area; |
|||
|
|||
@Schema(description = "加液区") |
|||
List<SysSettingVO> solution_area; |
|||
|
|||
@Schema(description = "拍子区域") |
|||
List<SysSettingVO> lid_area; |
|||
|
|||
@Schema(description = "系统配置") |
|||
List<SysSettingVO> sys_setting; |
|||
|
|||
@Schema(description = "容器数据") |
|||
List<ContainerListVO> containers; |
|||
} |
@ -0,0 +1,16 @@ |
|||
package com.qyft.gd.model.vo; |
|||
|
|||
import com.qyft.gd.model.entity.Container; |
|||
import com.qyft.gd.model.entity.Crafts; |
|||
import io.swagger.v3.oas.annotations.media.Schema; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
import java.util.List; |
|||
|
|||
@EqualsAndHashCode(callSuper = true) |
|||
@Schema(description = "容器") |
|||
@Data |
|||
public class ContainerListVO extends Container { |
|||
|
|||
} |
@ -0,0 +1,57 @@ |
|||
package com.qyft.gd.service; |
|||
|
|||
import com.qyft.gd.model.dto.SysSettingsDTO; |
|||
import com.qyft.gd.model.vo.BaseDataVO; |
|||
import com.qyft.gd.model.vo.ContainerListVO; |
|||
import com.qyft.gd.model.vo.SysSettingVO; |
|||
import jakarta.annotation.PostConstruct; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
@Service |
|||
public class BaseDataService { |
|||
private final SysSettingsService sysSettingsService; |
|||
private final ContainerService containerService; |
|||
private final BaseDataVO map = new BaseDataVO(); |
|||
|
|||
public BaseDataService(SysSettingsService sysSettingsService, ContainerService containerService) { |
|||
this.sysSettingsService = sysSettingsService; |
|||
this.containerService = containerService; |
|||
} |
|||
|
|||
// @PostConstruct |
|||
public void init() { |
|||
List<SysSettingVO> heatAreaList = sysSettingsService.getConfig("heat_area"); |
|||
List<SysSettingVO> solutionAreaList = sysSettingsService.getConfig("solution_area"); |
|||
List<SysSettingVO> lidAreaList = sysSettingsService.getConfig("lid_area"); |
|||
List<SysSettingVO> sysSettingList = sysSettingsService.getConfig("sys_setting"); |
|||
List<ContainerListVO> containerList = containerService.getAllContainer(); |
|||
for (SysSettingVO sysSettingVO : sysSettingList) { |
|||
sysSettingVO.setTemperature(0); |
|||
sysSettingVO.setCraftId(null); |
|||
} |
|||
map.setHeat_area(heatAreaList); |
|||
map.setSolution_area(solutionAreaList); |
|||
map.setLid_area(lidAreaList); |
|||
map.setSys_setting(sysSettingList); |
|||
map.setContainers(containerList); |
|||
} |
|||
public BaseDataVO getBaseData() { |
|||
return map; |
|||
} |
|||
public void updateBaseData(SysSettingsDTO dto) { |
|||
init(); |
|||
List<SysSettingVO> heatAreaList = map.getHeat_area(); |
|||
for (SysSettingVO sysSettingVO : heatAreaList) { |
|||
if (sysSettingVO.getId().equals(dto.getId())) { |
|||
if(dto.getTemperature() != null ) { |
|||
sysSettingVO.setTemperature(Math.toIntExact(dto.getTemperature())); |
|||
} |
|||
if (dto.getCraftId() != null) { |
|||
sysSettingVO.setCraftId(dto.getCraftId()); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
@ -0,0 +1,16 @@ |
|||
package com.qyft.gd.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.qyft.gd.model.entity.Container; |
|||
import com.qyft.gd.model.vo.ContainerListVO; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 溶器业务接口 |
|||
*/ |
|||
public interface ContainerService extends IService<Container> { |
|||
List<ContainerListVO> getAllContainer(); |
|||
|
|||
Boolean updateById(Long id); |
|||
} |
@ -0,0 +1,33 @@ |
|||
package com.qyft.gd.service.impl; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.qyft.gd.mapper.ContainerMapper; |
|||
import com.qyft.gd.mapper.SysSettingsMapper; |
|||
import com.qyft.gd.model.entity.Container; |
|||
import com.qyft.gd.model.entity.SysSettings; |
|||
import com.qyft.gd.model.vo.ContainerListVO; |
|||
import com.qyft.gd.service.ContainerService; |
|||
import com.qyft.gd.service.SysSettingsService; |
|||
import lombok.RequiredArgsConstructor; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 容器实现类 |
|||
*/ |
|||
@Service |
|||
@RequiredArgsConstructor |
|||
public class ContainerServiceImpl extends ServiceImpl<ContainerMapper, Container> implements ContainerService { |
|||
private final ContainerMapper containerMapper; |
|||
|
|||
@Override |
|||
public List<ContainerListVO> getAllContainer() { |
|||
return containerMapper.selectAll(); |
|||
} |
|||
|
|||
@Override |
|||
public Boolean updateById(Long id) { |
|||
return null; |
|||
} |
|||
} |
@ -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="com.qyft.gd.mapper.ContainerMapper"> |
|||
<select id="selectAll" resultType="com.qyft.gd.model.entity.Container"> |
|||
select * from container |
|||
</select> |
|||
</mapper> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue