Browse Source

fix:修复配方下拉选择接口

master
白凤吉 3 days ago
parent
commit
9eca7cc483
  1. 28
      src/main/java/com/iflytop/handacid/app/controller/FormulationController.java
  2. 18
      src/main/java/com/iflytop/handacid/app/model/dto/FormulationListDTO.java
  3. 24
      src/main/java/com/iflytop/handacid/app/model/vo/FormulationListVO.java
  4. 25
      src/main/java/com/iflytop/handacid/common/service/FormulationService.java

28
src/main/java/com/iflytop/handacid/app/controller/FormulationController.java

@ -1,6 +1,7 @@
package com.iflytop.handacid.app.controller; package com.iflytop.handacid.app.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.iflytop.handacid.app.model.dto.FormulationListDTO;
import com.iflytop.handacid.app.model.vo.FormulationListVO;
import com.iflytop.handacid.common.base.BasePageQuery; import com.iflytop.handacid.common.base.BasePageQuery;
import com.iflytop.handacid.common.model.entity.Formulation; import com.iflytop.handacid.common.model.entity.Formulation;
import com.iflytop.handacid.common.model.vo.FormulationVO; import com.iflytop.handacid.common.model.vo.FormulationVO;
@ -12,10 +13,10 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
/** /**
* 配方 * 配方
@ -26,23 +27,20 @@ import java.util.Arrays;
@RequiredArgsConstructor @RequiredArgsConstructor
@Slf4j @Slf4j
public class FormulationController { public class FormulationController {
@Autowired
private FormulationService formulationService;
@Autowired
private SolutionService solutionService;
private final FormulationService formulationService;
private final SolutionService solutionService;
@PostMapping("/page") @PostMapping("/page")
@Operation(summary = "获取分页数据") @Operation(summary = "获取分页数据")
public PageResult<FormulationVO> getPage(BasePageQuery query) {
public PageResult<FormulationVO> getPage(@RequestBody BasePageQuery query) {
return PageResult.success(formulationService.getPage(query)); return PageResult.success(formulationService.getPage(query));
} }
/* @GetMapping("/list")
@PostMapping("/list")
@Operation(summary = "获取List数据") @Operation(summary = "获取List数据")
public Result<List<Formulation>> getList( @RequestParam Integer solutionId, @RequestParam String concentration) {
List<Formulation> formulations=formulationService.list(new LambdaQueryWrapper<Formulation>().eq(Formulation::getSolutionId, solutionId).eq(Formulation::getConcentration,concentration));
return Result.success(formulations);
}*/
public Result<List<FormulationListVO>> getList(@RequestBody(required = false) FormulationListDTO dto) {
return Result.success(formulationService.getList(dto));
}
@GetMapping("/{id}") @GetMapping("/{id}")
@Operation(summary = "根据ID获取") @Operation(summary = "根据ID获取")
@ -54,14 +52,14 @@ public class FormulationController {
@Operation(summary = "创建配方") @Operation(summary = "创建配方")
public Result<String> create(@RequestBody Formulation formulation) { public Result<String> create(@RequestBody Formulation formulation) {
boolean flag = formulationService.save(formulation); boolean flag = formulationService.save(formulation);
return flag ? Result.success("添加成功") : Result.failed("添加失败");
return flag ? Result.success() : Result.failed();
} }
@PutMapping @PutMapping
@Operation(summary = "修改配方") @Operation(summary = "修改配方")
public Result<String> update(@RequestBody Formulation formulation) { public Result<String> update(@RequestBody Formulation formulation) {
boolean flag = formulationService.saveOrUpdate(formulation); boolean flag = formulationService.saveOrUpdate(formulation);
return flag ? Result.success("修改成功") : Result.failed("修改失败");
return flag ? Result.success() : Result.failed();
} }
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
@ -70,7 +68,7 @@ public class FormulationController {
boolean success = formulationService.removeBatchByIds( boolean success = formulationService.removeBatchByIds(
Arrays.stream(ids.split(",")).map(Long::valueOf).toList() Arrays.stream(ids.split(",")).map(Long::valueOf).toList()
); );
return success ? Result.success("删除成功") : Result.failed("删除失败");
return success ? Result.success() : Result.failed();
} }
/* @GetMapping("/concentration/{id}") /* @GetMapping("/concentration/{id}")

18
src/main/java/com/iflytop/handacid/app/model/dto/FormulationListDTO.java

@ -0,0 +1,18 @@
package com.iflytop.handacid.app.model.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@Data
public class FormulationListDTO {
@NotNull
@Schema(description = "溶液id")
private Long solutionId;
@NotNull
@Schema(description = "浓度")
private Double concentration;
}

24
src/main/java/com/iflytop/handacid/app/model/vo/FormulationListVO.java

@ -0,0 +1,24 @@
package com.iflytop.handacid.app.model.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@Data
public class FormulationListVO {
private Long id;
@Schema(description = "加液量(mL)")
private Double volume;
@Schema(description = "溶液ID")
private Long solutionId;
@Schema(description = "溶液名称")
private String solutionName;
@Schema(description = "溶液浓度")
private Double concentration;
}

25
src/main/java/com/iflytop/handacid/common/service/FormulationService.java

@ -1,8 +1,12 @@
package com.iflytop.handacid.common.service; package com.iflytop.handacid.common.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.iflytop.handacid.app.model.dto.FormulationListDTO;
import com.iflytop.handacid.app.model.vo.FormulationListVO;
import com.iflytop.handacid.common.base.BasePageQuery; import com.iflytop.handacid.common.base.BasePageQuery;
import com.iflytop.handacid.common.mapper.FormulationMapper; import com.iflytop.handacid.common.mapper.FormulationMapper;
import com.iflytop.handacid.common.model.entity.Formulation; import com.iflytop.handacid.common.model.entity.Formulation;
@ -12,6 +16,7 @@ import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
@ -47,4 +52,24 @@ public class FormulationService extends ServiceImpl<FormulationMapper, Formulati
}); });
} }
public List<FormulationListVO> getList(FormulationListDTO dto) {
LambdaQueryWrapper<Formulation> qw = null;
if (dto != null) {
qw = Wrappers.<Formulation>lambdaQuery()
.eq(dto.getSolutionId() != null, Formulation::getSolutionId, dto.getSolutionId())
.eq(dto.getConcentration() != null, Formulation::getConcentration, dto.getConcentration());
}
List<Formulation> formulations = this.list(qw);
List<FormulationListVO> formulationListVOList = new ArrayList<>();
for (Formulation formulation : formulations) {
FormulationListVO formulationListVO = new FormulationListVO();
BeanUtils.copyProperties(formulation, formulationListVO);
Solution solution = solutionService.getById(formulation.getSolutionId());
formulationListVO.setSolutionName(solution.getName());
formulationListVOList.add(formulationListVO);
}
return formulationListVOList;
}
} }
Loading…
Cancel
Save