|
|
@@ -26,10 +26,28 @@ public class AdminEnergyRuleController {
|
|
|
}
|
|
|
|
|
|
@PostMapping("/create")
|
|
|
- public Result<Void> create(@RequestBody EnergyRule rule) {
|
|
|
+ public Result<Void> create(@RequestBody Map<String, Object> params) {
|
|
|
+ EnergyRule rule = new EnergyRule();
|
|
|
+ rule.setRuleName((String) params.get("ruleName"));
|
|
|
+ rule.setEventType((String) params.get("eventType"));
|
|
|
+ rule.setDimensionCode((String) params.get("dimensionCode"));
|
|
|
+ Object energyValue = params.get("energyValue");
|
|
|
+ if (energyValue instanceof Number) {
|
|
|
+ rule.setAmount(((Number) energyValue).intValue());
|
|
|
+ } else if (energyValue != null) {
|
|
|
+ rule.setAmount(Integer.valueOf(energyValue.toString()));
|
|
|
+ }
|
|
|
+ String action = (String) params.get("action");
|
|
|
+ rule.setAction(action != null ? action : "increase");
|
|
|
+ Object ruleCode = params.get("ruleCode");
|
|
|
+ if (ruleCode != null) rule.setRuleCode(ruleCode.toString());
|
|
|
+ Object priority = params.get("priority");
|
|
|
+ if (priority instanceof Number) rule.setPriority(((Number) priority).intValue());
|
|
|
+ Object status = params.get("status");
|
|
|
+ rule.setStatus(status instanceof Number ? ((Number) status).intValue() : 1);
|
|
|
+ rule.setDescription((String) params.get("description"));
|
|
|
rule.setCreatedAt(LocalDateTime.now());
|
|
|
rule.setUpdatedAt(LocalDateTime.now());
|
|
|
- if (rule.getStatus() == null) rule.setStatus(1);
|
|
|
energyRuleMapper.insert(rule);
|
|
|
return Result.success(null);
|
|
|
}
|