Commit 5bb3e18c authored by ZWT's avatar ZWT

feat(零碳): 长庆

1.长庆演示首页功能开发,新增查询井场/场站列表接口,添加接口文档并完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent cbe80241
......@@ -73,7 +73,7 @@ public interface SysOrganizationCloudService {
XListResult<GetSysOrganizationViewOutput> getOrganizationBySubOuIds(XContext context, GetSysOrganizationViewInput input);
@XText("根据用户id查询地区公司")
XListResult<GetSysOrganizationViewOutput> selectRegionFirmByUserId(XContext context,SelectRegionFirmInput input);
XListResult<GetSysOrganizationViewOutput> selectRegionFirmByUserId(XContext context, SelectRegionFirmInput input);
@XText("根据父级id查询儿子级--最后一级查的是场站")
XListResult<GetSysOrganizationViewOutput> queryOuInfoOrStationByParentOuId(XContext context);
......@@ -84,5 +84,7 @@ public interface SysOrganizationCloudService {
@XText("根据组织机构id获取所有的子级组织机构列表")
XListResult<GetSysOrganizationViewOutput> getAllListByOuId(XContext context, GetAllOuListByOuIdInput input);
@XText("查采油厂列表")
XListResult<GetSysOrganizationViewOutput> getPlantList(XContext context);
}
......@@ -8,6 +8,7 @@ import org.springframework.util.CollectionUtils;
import pps.cloud.system.enums.OuLevelDic;
import pps.cloud.system.service.SysOrganizationCloudService;
import pps.cloud.system.service.data.*;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.session.PpsUserSession;
import pps.core.system.constant.SysOrganizationCode;
import pps.core.system.entity.*;
......@@ -395,4 +396,15 @@ public class SysOrganizationCloudServiceImpl implements SysOrganizationCloudServ
List<GetSysOrganizationViewOutput> viewList = XCopyUtils.copyNewList(list, GetSysOrganizationViewOutput.class);
return XListResult.success(viewList);
}
@Override
public XListResult<GetSysOrganizationViewOutput> getPlantList(XContext context) {
SysOrganizationMapper mapper = context.getBean(SysOrganizationMapper.class);
List<SysOrganizationEnt> plant = mapper.selectList(new LambdaQueryWrapper<SysOrganizationEnt>()
.eq(SysOrganizationEnt::getIsDeleted, BusinessConstant.ONE)
.eq(SysOrganizationEnt::getOuLevel, "PLANT")
.orderByAsc(SysOrganizationEnt::getCreateTime)
);
return XListResult.success(XCopyUtils.copyNewList(plant, GetSysOrganizationViewOutput.class));
}
}
......@@ -28,6 +28,9 @@ public class GetBasePhotovoltaicPlantCloudInput {
@XText("电站ID集合")
private List<String> plantIds;
@XText("组织ID")
private String ouId;
@XText("组织ID集合")
private List<String> ouIds;
}
......@@ -70,4 +70,13 @@ public class GetBasePhotovoltaicPlantCloudOutput {
@XText("所属省份")
private String provinceCode;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
}
package pps.core.base.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.text.CharSequenceUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import pps.cloud.base.service.BasePhotovoltaicPlantCloudService;
import pps.cloud.base.service.data.base_photovoltaic_plant.GetBasePhotovoltaicPlantCloudInput;
......@@ -34,10 +35,12 @@ public class BasePhotovoltaicPlantCloudServiceImpl implements BasePhotovoltaicPl
*/
@Override
public XListResult<GetBasePhotovoltaicPlantCloudOutput> getBasePhotovoltaicPlantList(XContext context, GetBasePhotovoltaicPlantCloudInput input) {
String ouId = input.getOuId();
List<String> plantIds = input.getPlantIds();
BasePhotovoltaicPlantMapper mapper = context.getBean(BasePhotovoltaicPlantMapper.class);
List<BasePhotovoltaicPlantEnt> list = mapper.selectList(new LambdaQueryWrapper<BasePhotovoltaicPlantEnt>()
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.eq(CharSequenceUtil.isNotBlank(ouId), BasePhotovoltaicPlantEnt::getOuId, ouId)
.in(CollUtil.isNotEmpty(plantIds), BaseModel::getId, plantIds)
);
List<GetBasePhotovoltaicPlantCloudOutput> outPuts = XCopyUtils.copyNewList(list, GetBasePhotovoltaicPlantCloudOutput.class);
......
package pps.core.prediction.service;
import cn.hutool.core.text.CharSequenceUtil;
import pps.cloud.base.service.BasePhotovoltaicPlantCloudService;
import pps.cloud.base.service.data.base_photovoltaic_plant.GetBasePhotovoltaicPlantCloudInput;
import pps.cloud.base.service.data.base_photovoltaic_plant.GetBasePhotovoltaicPlantCloudOutput;
import pps.cloud.system.service.SysOrganizationCloudService;
import pps.cloud.system.service.data.GetSysOrganizationViewOutput;
import pps.core.prediction.service.data.home_page.GetStationViewInput;
import pps.core.prediction.service.data.home_page.GetStationViewOutput;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.data.XListResult;
import xstartup.feature.api.annotation.XApiAnonymous;
import xstartup.feature.api.annotation.XApiGet;
import java.util.ArrayList;
import java.util.List;
/**
* 首页
*
* @author ZWT
* @date 2024/03/25 17:54
*/
@XText("首页模块")
@XService
public class HomePageService {
/**
* 首页模块--井场列表
*
* @param context 上下文
* @param input 输入
* @return {@link XListResult}<{@link GetStationViewOutput}>
*/
@XApiAnonymous
@XText("首页模块--井场列表")
@XApiGet
public XListResult<GetStationViewOutput> getStationList(XContext context, GetStationViewInput input) {
List<GetStationViewOutput> outputs;
String stationId = input.getStationId();
if (CharSequenceUtil.isBlank(stationId)) {
//查组织
SysOrganizationCloudService service = context.getBean(SysOrganizationCloudService.class);
XListResult<GetSysOrganizationViewOutput> result = service.getPlantList(context);
result.throwIfFail();
outputs = new ArrayList<>(result.getResult().size());
result.getResult().forEach(item -> {
GetStationViewOutput output = new GetStationViewOutput();
output.setStationId(item.getId());
output.setStationName(item.getOuName());
outputs.add(output);
});
} else {
//查电站
BasePhotovoltaicPlantCloudService service = context.getBean(BasePhotovoltaicPlantCloudService.class);
XListResult<GetBasePhotovoltaicPlantCloudOutput> result = service.getBasePhotovoltaicPlantList(context, GetBasePhotovoltaicPlantCloudInput.builder()
.ouId(stationId)
.build());
result.throwIfFail();
outputs = new ArrayList<>(result.getResult().size());
result.getResult().forEach(item -> {
GetStationViewOutput output = new GetStationViewOutput();
output.setStationId(item.getId());
output.setStationName(item.getStationName());
outputs.add(GetStationViewOutput.builder()
.stationId(item.getId())
.stationName(item.getStationName())
.longitude(item.getLongitude())
.latitude(item.getLatitude())
.build());
});
}
return XListResult.success(outputs);
}
}
\ No newline at end of file
package pps.core.prediction.service.data.home_page;
import lombok.Data;
import xstartup.annotation.XText;
/**
* 电站组织入参
*
* @author ZWT
* @date 2024/03/25 19:42
*/
@Data
public class GetStationViewInput {
@XText("站ID")
private String stationId;
}
package pps.core.prediction.service.data.home_page;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import xstartup.annotation.XText;
import java.math.BigDecimal;
/**
* 电站组织视图
*
* @author ZWT
* @date 2024/03/25 19:40
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class GetStationViewOutput {
@XText("站ID")
private String stationId;
@XText("站名称")
private String stationName;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment