Я начал писать один проект, и у меня есть несколько вопросов. Это калькулятор (алкогольный алкотестер) Ниже приведен код Класс модели:
public class CalculatorFromData {
private double coeffieicient;
private double bodyweight;
private double alcoholInGrams;
public CalculatorFromData(double coeffieicient, double bodyweight, double alcoholInGrams) {
this.coeffieicient = coeffieicient;
this.bodyweight = bodyweight;
this.alcoholInGrams = alcoholInGrams;
}
public CalculatorFromData(){}
public double getCoeffieicient() {
return coeffieicient;
}
public void setCoeffieicient(double coeffieicient) {
this.coeffieicient = coeffieicient;
}
public double getBodyweight() {
return bodyweight;
}
public void setBodyweight(double bodyweight) {
this.bodyweight = bodyweight;
}
public double getAlcoholInGrams() {
return alcoholInGrams;
}
public void setAlcoholInGrams(double alcoholInGrams) {
this.alcoholInGrams = alcoholInGrams;
}
}
Мой контроллер:
@RequestMapping("/breathalyser")
public String createOperationModel(Model model) {
model.addAttribute("operationModel", new CalculatorFromData());
return "calculatorform";
}
@RequestMapping(path="/breathalyser", method = RequestMethod.POST)
public String add(@ModelAttribute("operationModel") CalculatorFromData calculatorFromData, Model model) {
model.addAttribute("result", calculator.calculate(calculatorFromData.getAlcoholInGrams(), calculatorFromData.getCoeffieicient(), calculatorFromData.getBodyweight()));
return "calculatorform";
}
Мой класс с методом:
public class CalculatorBmr {
public double calculate(int age,double height, double bodyweight){
return 66+(13.7*bodyweight)+(5*height)-(6.76*age);
}
И HTML-файл
<div class="container" >
<form class="list-inline" th:object="${operationModel}" th:action="@{/breathalyser}" th:method="post" >
<div class="form-group" >
<label class="control-label">Ilość wypitego alkoholu w gramach:</label>
<input type="text" class="form-control" th:field="*{alcoholInGrams}" placeholder="Alkohol podany w gramach"/>
<p th:if="${#fields.hasErrors('alcoholInGrams')}" th:errors="*{alcoholInGrams}"/>
</div>
<div class="form-group" >
<label class="control-label">Współczynnik:</label>
<input type="text" class="form-control" th:field="*{coeffieicient}" placeholder="Współczynnik"/>
<p th:if="${#fields.hasErrors('coeffieicient')}" th:errors="*{coeffieicient}"/>
</div>
<div class="form-group" >
<label class="control-label">Masa ciała:</label>
<input type="text" class="form-control" th:field="*{bodyweight}" placeholder="Masa ciała"/>
<p th:if="${#fields.hasErrors('bodyweight')}" th:errors="*{bodyweight}"/>
</div>
<div class="row">
<button type="submit" class="btn-primary">Oblicz</button>
</div>
<div>
<font size="4">
Result:</font> <span th:if="${result != null}" th:text="${result}"></span>
</div>
</form>
И У меня есть некоторые вопросы:
1) Я хотел бывместо поля коэффициента, чтобы иметь радиокнопку, в которой отмечено, являетесь ли вы женщиной или мужчиной, а затем автоматически метод подсчитает для женщины 0,6, для мужчины 0,7.Как изменить метод?А как писать спереди?
2) Хотелось бы увидеть сообщение «Трезвый, прежде чем садиться в машину», когда результат выше 0,2
3) Как добавитьстрока к результату, чтобы показать что-то вроде этого - Результат: 0,22 в крови
4) Как сделать проверку?В случае неверных данных не учитывайте результат.Ранее я делал такие проверки, что в случае правильных данных я перенаправлял на другую страницу, и в этом случае я не знаю, как это сделать.Поэтому, если у меня плохие данные, это должно исправить их, и если это хорошо, это даст результат