From 156e1f871e3d8b3f36de09ca4f5b58be8e20acb4 Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期四, 11 九月 2025 15:28:02 +0800 Subject: [PATCH] 优化配方下发接口 --- jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/HerbFormulaVo.java | 36 ++++++++++++ jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/entity/DryHerbFormula.java | 22 +++++++ jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/DryOrderVo.java | 17 +++++ jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryRealTimeDataController.java | 105 +++++++++++++++++++--------------- 4 files changed, 133 insertions(+), 47 deletions(-) diff --git a/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/entity/DryHerbFormula.java b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/entity/DryHerbFormula.java index 9f63439..a04fef7 100755 --- a/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/entity/DryHerbFormula.java +++ b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/entity/DryHerbFormula.java @@ -48,7 +48,11 @@ @Excel(name = "閰嶆柟鍚嶇О", width = 15) @ApiModelProperty(value = "閰嶆柟鍚嶇О") private String name; - /**鑽潗鎷奸煶*/ + /**缂╁啓*/ + @Excel(name = "缂╁啓", width = 15) + @ApiModelProperty(value = "缂╁啓") + private String abbr; + /**鑽潗鎷奸煶*/ @Excel(name = "鑽潗鎷奸煶", width = 15) @ApiModelProperty(value = "鑽潗鎷奸煶") private String pinyin; @@ -57,10 +61,22 @@ @Dict(dictTable = "dry_eqp_type", dicText = "name", dicCode = "id") @ApiModelProperty(value = "璁惧绫诲瀷") private String eqpType; + /**鐗圭鐗╂枡*/ + @Excel(name = "鐗圭鐗╂枡", width = 15) + @ApiModelProperty(value = "鐗圭鐗╂枡") + private String special; + /**杞昏川鐗╂枡*/ + @Excel(name = "杞昏川鐗╂枡", width = 15) + @ApiModelProperty(value = "杞昏川鐗╂枡") + private String light; /**閰嶆柟鍒嗙被*/ @Excel(name = "閰嶆柟鍒嗙被", width = 15) @ApiModelProperty(value = "閰嶆柟鍒嗙被") private String category; + /**鍒濆鍚按鐜�*/ + @Excel(name = "鍒濆鍚按鐜�", width = 15) + @ApiModelProperty(value = "鍒濆鍚按鐜�") + private Double initial; /**鐩爣鍚按鐜�*/ @Excel(name = "鐩爣鍚按鐜�", width = 15) @ApiModelProperty(value = "鐩爣鍚按鐜�") @@ -89,6 +105,10 @@ @Excel(name = "鐜婀垮害", width = 15) @ApiModelProperty(value = "鐜婀垮害") private Double envHum; + /**缈绘枡绛栫暐*/ + @Excel(name = "缈绘枡绛栫暐", width = 15) + @ApiModelProperty(value = "缈绘枡绛栫暐") + private String strategy; /**鑽℃枡寤舵椂ms*/ @Excel(name = "鑽℃枡寤舵椂ms", width = 15) @ApiModelProperty(value = "鑽℃枡寤舵椂ms") diff --git a/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/DryOrderVo.java b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/DryOrderVo.java index 7ceb381..7e930aa 100755 --- a/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/DryOrderVo.java +++ b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/DryOrderVo.java @@ -185,6 +185,23 @@ /**骞冲潎鐢佃��**/ private Double wattAvg; + + + + @ApiModelProperty(value = "缂╁啓") + private String abbr; + @ApiModelProperty(value = "鐗圭鐗╂枡") + private String special; + @ApiModelProperty(value = "杞昏川鐗╂枡") + private String light; + + @ApiModelProperty(value = "鍒濆椋庢満棰戠巼") + private Integer fanSpeed; + @ApiModelProperty(value = "缈绘枡绛栫暐") + private String strategy; + @ApiModelProperty(value = "鍐烽鏃堕暱") + private Integer coolingDuration; + public DryOrderVo(RealTimeDataVo realTimeDataVo) { this.id = IdUtil.fastSimpleUUID(); this.code = realTimeDataVo.getWorkorder(); diff --git a/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/HerbFormulaVo.java b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/HerbFormulaVo.java new file mode 100644 index 0000000..6cc264c --- /dev/null +++ b/jeecg-module-dry/jeecg-module-dry-api/src/main/java/org/jeecg/modules/dry/vo/HerbFormulaVo.java @@ -0,0 +1,36 @@ +package org.jeecg.modules.dry.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; + +@Data +public class HerbFormulaVo { + + @ApiModelProperty(value = "閰嶆柟缂栧彿") + private String code; + @ApiModelProperty(value = "閰嶆柟鍚嶇О") + private String name; + @ApiModelProperty(value = "缂╁啓") + private String abbr; + @ApiModelProperty(value = "鐗圭鐗╂枡") + private String special; + @ApiModelProperty(value = "杞昏川鐗╂枡") + private String light; + @ApiModelProperty(value = "鍒濆鍚按鐜�") + private Double initial; + @ApiModelProperty(value = "鐩爣鍚按鐜�") + private Double target; + @ApiModelProperty(value = "鎶曟枡閲�") + private Integer feed; + @ApiModelProperty(value = "棰勮骞茬嚗鏃堕棿") + private Integer et; + @ApiModelProperty(value = "鐑娓╁害") + private Double windTemp; + @ApiModelProperty(value = "鍒濆椋庢満棰戠巼") + private Integer fanSpeed; + @ApiModelProperty(value = "缈绘枡绛栫暐") + private String strategy; + @ApiModelProperty(value = "鍐烽鏃堕暱") + private Integer coolingDuration; +} diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryRealTimeDataController.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryRealTimeDataController.java index 0f1b58f..3d9e86f 100644 --- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryRealTimeDataController.java +++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/controller/DryRealTimeDataController.java @@ -2,6 +2,7 @@ import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import io.swagger.annotations.Api; @@ -192,7 +193,7 @@ */ @ApiOperation(value = "骞茬嚗閰嶆柟鑾峰彇", notes = "骞茬嚗閰嶆柟涓嬪彂") @GetMapping(value = "/queryFormula") - public Result<String> queryFormulaByEqpType(Integer tenantId, String eqpCode) throws JAXBException { + public Result<List<HerbFormulaVo>> queryFormulaByEqpType(Integer tenantId, String eqpCode) throws JAXBException { //鑾峰彇request HttpServletRequest request = SpringContextUtils.getHttpServletRequest(); // 鑾峰彇璇锋眰涓绘満鐨処P鍦板潃 @@ -210,56 +211,68 @@ queryWrapper.eq(DryHerbFormula::getEqpType, dryEquipment.getType()) .eq(DryHerbFormula::getTenantId, tenantId); List<DryHerbFormula> list = dryHerbFormulaService.list(queryWrapper); - Formulas formulas = new Formulas(); + + List<HerbFormulaVo> voList = new ArrayList<>(); + list.forEach(item -> { - DryHerbInfo byId = dryHerbInfoService.getById(item.getHerbId()); - if (byId != null) { - item.setPinyin(byId.getPinyin()); - item.setName(byId.getName()); - } - Formula formula = new Formula(); - BaseParam baseParam = new BaseParam(); - WaterParam waterParam = new WaterParam(); - TypeParam typeParam = new TypeParam(); - OffsetParam offsetParam = new OffsetParam(); - baseParam.setCode(item.getCode()); - baseParam.setIndex(item.getCode()); - baseParam.setName(item.getName()); - baseParam.setAb(item.getName()); - baseParam.setTyp(item.getCategory()); - waterParam.setDelay(Double.valueOf(item.getDelay())); - waterParam.setMoisture3(item.getTarget()); - waterParam.setWeight1(Double.valueOf(item.getFeed())); - waterParam.setTimes(item.getEt()); - waterParam.setTemp1(item.getWindTemp()); - waterParam.setTemp2(item.getEnvTemp()); - waterParam.setTemp3(item.getEnvHum()); - waterParam.setTurntime(item.getTurn()); - typeParam.setMtype(Integer.valueOf(item.getCategory())); - offsetParam.setMoisoffset(item.getMoisOffset()); - offsetParam.setColdwind(Double.valueOf(item.getCoolingDuration())); +// DryHerbInfo byId = dryHerbInfoService.getById(item.getHerbId()); +// if (byId != null) { +// item.setPinyin(byId.getPinyin()); +// item.setName(byId.getName()); +// } - formula.setBaseParam(baseParam); - formula.setWaterParam(waterParam); - formula.setTypeParam(typeParam); - formula.setOffsetParam(offsetParam); - formulas.getDryFormulaList().add(formula); +// Formula formula = new Formula(); +// BaseParam baseParam = new BaseParam(); +// WaterParam waterParam = new WaterParam(); +// TypeParam typeParam = new TypeParam(); +// OffsetParam offsetParam = new OffsetParam(); +// baseParam.setCode(item.getCode()); +// baseParam.setIndex(item.getCode()); +// baseParam.setName(item.getName()); +// baseParam.setAb(item.getName()); +// baseParam.setTyp(item.getCategory()); +// waterParam.setDelay(Double.valueOf(item.getDelay())); +// waterParam.setMoisture3(item.getTarget()); +// waterParam.setWeight1(Double.valueOf(item.getFeed())); +// waterParam.setTimes(item.getEt()); +// waterParam.setTemp1(item.getWindTemp()); +// waterParam.setTemp2(item.getEnvTemp()); +// waterParam.setTemp3(item.getEnvHum()); +// waterParam.setTurntime(item.getTurn()); +// typeParam.setMtype(Integer.valueOf(item.getCategory())); +// offsetParam.setMoisoffset(item.getMoisOffset()); +// offsetParam.setColdwind(Double.valueOf(item.getCoolingDuration())); +// +// formula.setBaseParam(baseParam); +// formula.setWaterParam(waterParam); +// formula.setTypeParam(typeParam); +// formula.setOffsetParam(offsetParam); +// formulas.getDryFormulaList().add(formula); + + HerbFormulaVo vo = new HerbFormulaVo(); + BeanUtil.copyProperties(item, vo); + voList.add(vo); }); - // 鎶妚os杞崲鎴恱ml - // 鍒涘缓JAXBContext瀹炰緥 - JAXBContext jaxbContext = JAXBContext.newInstance(Formulas.class); +// // 鎶妚os杞崲鎴恱ml +// // 鍒涘缓JAXBContext瀹炰緥 +// JAXBContext jaxbContext = JAXBContext.newInstance(Formulas.class); +// +// // 鍒涘缓Marshaller瀹炰緥 +// Marshaller marshaller = jaxbContext.createMarshaller(); +// +// // 璁剧疆鏄惁鏍煎紡鍖栬緭鍑� +// marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, false); +// +// // 灏嗗璞″簭鍒楀寲鍒板瓧绗︿覆 +// StringWriter writer = new StringWriter(); +// marshaller.marshal(formulas, writer); - // 鍒涘缓Marshaller瀹炰緥 - Marshaller marshaller = jaxbContext.createMarshaller(); +// String jsonString = JSONObject.toJSONString(voList); +// +// String json = JSON.toJSONString(voList); +// System.out.println(jsonString); - // 璁剧疆鏄惁鏍煎紡鍖栬緭鍑� - marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, false); - - // 灏嗗璞″簭鍒楀寲鍒板瓧绗︿覆 - StringWriter writer = new StringWriter(); - marshaller.marshal(formulas, writer); - - return Result.OK("璇锋眰鎴愬姛", writer.toString()); + return Result.OK("璇锋眰鎴愬姛", voList); } -- Gitblit v1.9.3