refactor (farm): 投入品重构
- 涉及到的模块: - 基础数据管理 - 投入品 (模版类型) - 模型管理 - 农事记录 - 投入品(引用类型) - 生产中心 - 农事记录 - 投入品使用记录
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
package cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmanagement.modelfarmingoperation;
|
||||
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.basicdatamanagement.inputlibrary.vo.inputs.InputsRespVO;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmanagement.modelfarmingoperation.vo.ModelFarmingOperationPageReqVO;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmanagement.modelfarmingoperation.vo.ModelFarmingOperationRespVO;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmanagement.modelfarmingoperation.vo.ModelFarmingOperationSaveReqVO;
|
||||
import cn.iocoder.yudao.module.farm.manager.inputs.InputsManager;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import jakarta.validation.Valid;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
@@ -37,6 +39,8 @@ import cn.iocoder.yudao.module.farm.service.modelfarmingoperation.ModelFarmingOp
|
||||
@Validated
|
||||
public class ModelFarmingOperationController {
|
||||
|
||||
@Resource
|
||||
private InputsManager inputsManager;
|
||||
@Resource
|
||||
private ModelFarmingOperationService modelFarmingOperationService;
|
||||
|
||||
@@ -78,6 +82,9 @@ public class ModelFarmingOperationController {
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
public CommonResult<ModelFarmingOperationRespVO> getModelFarmingOperation(@RequestParam("id") String id) {
|
||||
ModelFarmingOperationRespVO modelFarmingOperation = modelFarmingOperationService.getModelFarmingOperation(id);
|
||||
|
||||
List<InputsRespVO> inputs = inputsManager.getInputsPageForReferenceType(id);
|
||||
modelFarmingOperation.setFarmingOperationInputVOS(inputs);
|
||||
return success(modelFarmingOperation);
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmana
|
||||
|
||||
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import cn.idev.excel.annotation.ExcelProperty;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.basicdatamanagement.inputlibrary.vo.inputs.InputsRespVO;
|
||||
import cn.iocoder.yudao.module.farm.dal.dataobject.modelfarmingoperationinput.ModelFarmingOperationInputDO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
@@ -83,4 +84,6 @@ public class ModelFarmingOperationRespVO {
|
||||
private String inputsIds;
|
||||
|
||||
private List<ModelFarmingOperationInputDO> farmingOperationInputDOS;
|
||||
|
||||
private List<InputsRespVO> farmingOperationInputVOS;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.farm.manager.inputs;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.basicdatamanagement.inputlibrary.vo.inputs.*;
|
||||
import cn.iocoder.yudao.module.farm.controller.admin.managementcenter.modelmanagement.modelfarmingoperation.vo.ModelFarmingOperationRespVO;
|
||||
import cn.iocoder.yudao.module.farm.dal.dataobject.inputlibrary.InputsDO;
|
||||
import cn.iocoder.yudao.module.farm.enums.CommonConstants;
|
||||
import cn.iocoder.yudao.module.farm.manager.inputs.dto.wms.InputCategoryDTO;
|
||||
@@ -14,6 +13,7 @@ import cn.iocoder.yudao.module.farm.service.inputlibrary.InputsService;
|
||||
import cn.iocoder.yudao.module.farm.service.modelfarmingoperation.ModelFarmingOperationService;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
|
||||
import cn.iocoder.yudao.module.system.service.dict.DictDataService;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -166,34 +166,34 @@ public class InputsManager {
|
||||
* =================================================
|
||||
*/
|
||||
|
||||
public void createInputsForReferenceType(InputsSaveReqVO req) {
|
||||
req.setInputCategory(INPUT_TYPE_2);
|
||||
String id = inputsService.createInputs(req);
|
||||
public void createInputsForReferenceType(List<InputsSaveReqVO> req) {
|
||||
|
||||
for (InputsSaveReqVO i : req) {
|
||||
if (!ObjectUtils.notEqual(i.getInputCategory(), INPUT_CATEGORY_1)) {
|
||||
// 模版类型 直接新增
|
||||
i.setInputCategory(INPUT_TYPE_2);
|
||||
String id = inputsService.createInputs(i);
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
PageResult<InputsRespVO> getInputsPageForReferenceType(String mfId,InputsPageReqVO req) {
|
||||
|
||||
ModelFarmingOperationRespVO modelFarmingOperation = modelFarmingOperationService.getModelFarmingOperation(mfId);
|
||||
String inputsIds = modelFarmingOperation.getInputsIds();
|
||||
List<String> ids = Arrays.stream(inputsIds.split(","))
|
||||
.map(String::trim)
|
||||
.filter(s -> !s.isEmpty())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public List<InputsRespVO> getInputsPageForReferenceType(String mfId) {
|
||||
Map<String, String> inputTypeNameMap = this.getDictTypeMap(ASSET_TYPE);
|
||||
Map<String, String> itemsNameMap = this.getDictTypeMap(ITEMS_UNIT);
|
||||
Map<String, String> specificationNameMap = this.getDictTypeMap(SPECIFICATION_PRICE);
|
||||
|
||||
req.setInputCategory(CommonConstants.INPUT_TYPE_2);
|
||||
PageResult<InputsDO> source = inputsService.getInputsPage(req);
|
||||
source.getList().stream().forEach(e -> {
|
||||
List<String> ids = modelFarmingOperationService.getModelFarmingOperationInputIds(mfId);
|
||||
|
||||
List<InputsDO> iList = inputsService.getInputsByIds(ids);
|
||||
iList.stream().forEach(e -> {
|
||||
covertStr(e, inputTypeNameMap, itemsNameMap, specificationNameMap);
|
||||
});
|
||||
|
||||
PageResult<InputsRespVO> res = BeanUtils.toBean(source, InputsRespVO.class);
|
||||
List<InputsRespVO> res = BeanUtils.toBean(iList, InputsRespVO.class);
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
@@ -549,7 +549,7 @@ public class CropFarmingCenterServiceImpl implements CropFarmingCenterService {
|
||||
|
||||
@Override
|
||||
public void restartProductionPlan(ProductionPlanUpdateReqVO updateReqVO) {
|
||||
|
||||
this.updateProductionPlan(updateReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -64,4 +64,5 @@ public interface InputsService {
|
||||
*/
|
||||
PageResult<InputsDO> getInputsPage(InputsPageReqVO pageReqVO);
|
||||
|
||||
List<InputsDO> getInputsByIds(List<String> ids);
|
||||
}
|
||||
|
||||
@@ -116,4 +116,9 @@ public class InputsServiceImpl implements InputsService {
|
||||
return inputsMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<InputsDO> getInputsByIds(List<String> ids) {
|
||||
return inputsMapper.selectByIds(ids);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -61,4 +61,10 @@ public interface ModelFarmingOperationService {
|
||||
*/
|
||||
PageResult<ModelFarmingOperationDO> getModelFarmingOperationPage(ModelFarmingOperationPageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获取 模型管理- 农事记录id集合
|
||||
* @param mfId
|
||||
* @return
|
||||
*/
|
||||
List<String> getModelFarmingOperationInputIds(String mfId);
|
||||
}
|
||||
@@ -18,6 +18,7 @@ import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -107,13 +108,14 @@ public class ModelFarmingOperationServiceImpl implements ModelFarmingOperationSe
|
||||
|
||||
|
||||
ModelFarmingOperationRespVO bean = BeanUtils.toBean(modelFarmingOperationMapper.selectById(id), ModelFarmingOperationRespVO.class);
|
||||
List<ModelFarmingOperationInputDO> farmingOperationInputDOS = modelFarmingOperationInputMapper.selectByFarmingId(id);
|
||||
for (ModelFarmingOperationInputDO aDo : farmingOperationInputDOS) {
|
||||
aDo.setInputsName(dictMap.get(aDo.getInputsId()));
|
||||
aDo.setUnitName(unit1Map.get(aDo.getUnit()));
|
||||
aDo.setPackageUnitName(unit2Map.get(aDo.getPackageUnit()));
|
||||
}
|
||||
bean.setFarmingOperationInputDOS(farmingOperationInputDOS);
|
||||
// List<ModelFarmingOperationInputDO> farmingOperationInputDOS = modelFarmingOperationInputMapper.selectByFarmingId(id);
|
||||
// for (ModelFarmingOperationInputDO aDo : farmingOperationInputDOS) {
|
||||
// aDo.setInputsName(dictMap.get(aDo.getInputsId()));
|
||||
// aDo.setUnitName(unit1Map.get(aDo.getUnit()));
|
||||
// aDo.setPackageUnitName(unit2Map.get(aDo.getPackageUnit()));
|
||||
// }
|
||||
// bean.setFarmingOperationInputDOS(farmingOperationInputDOS);
|
||||
|
||||
return bean;
|
||||
}
|
||||
|
||||
@@ -122,4 +124,14 @@ public class ModelFarmingOperationServiceImpl implements ModelFarmingOperationSe
|
||||
return modelFarmingOperationMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getModelFarmingOperationInputIds(String mfId) {
|
||||
ModelFarmingOperationDO modelFarmingOperationDO = modelFarmingOperationMapper.selectById(mfId);
|
||||
String inputsIds = modelFarmingOperationDO.getInputsIds();
|
||||
return Arrays.stream(inputsIds.split(","))
|
||||
.map(String::trim)
|
||||
.filter(s -> !s.isEmpty())
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user