Commit 238e8d53 authored by ZWT's avatar ZWT

feat(零碳): 长庆

1.系统管理模块,查询线路及组织机构树接口修改,增加查询逻辑,通过线路名称模糊查询树列表,完成接口冒烟测试并同步线上接口文档;
2.系统管理模块,查询光伏电站及组织机构树接口修改,增加查询逻辑,通过电站名称模糊查询树列表,完成接口冒烟测试并同步线上接口文档;
3.基础信息配置模块,新增市电峰谷导入模板下载接口,完成接口冒烟测试并同步线上接口文档;
4.基础信息配置模块,市电峰谷模板下载接口修改,增加多选月份导出配置数据逻辑,修改线上接口文档并完成接口冒烟测试;
5.基础信息配置模块,新增市电峰谷数据导入接口,增加导入数据校验逻辑,完成接口冒烟测试并添加线上接口文档;
6.基础间开配置模块,新增编辑制度模板导出接口,添加线上接口文档并完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 5b06f9cf
package pps.core.common.excel;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.excel.config.ExcelDynamicSelect;
import java.util.List;
import java.util.stream.Collectors;
/**
* 时段范围下拉
*
* @author ZWT
* @date 2024/05/13
*/
public class TimeRangeImpl implements ExcelDynamicSelect {
@Override
public String[] getSource() {
List<String> collect = DateUtil.rangeToList(DateUtil.beginOfDay(DateUtil.date()),
DateUtil.endOfDay(DateUtil.date()), DateField.MINUTE,
30)
.stream()
.map(d -> d.toString(BusinessConstant.MINUTES_FORMAT))
.collect(Collectors.toList());
collect.add(BusinessConstant.END_OF_DAY_TIME);
return collect.toArray(new String[0]);
}
}
\ No newline at end of file
package pps.core.space.service;
import cn.hutool.core.io.FileUtil;
import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import pps.core.common.excel.util.EasyExcelUtil;
import pps.core.common.excel.util.ExcelStyleTool;
import pps.core.space.service.data.base_excel.ExcelSpaceOptimizeTemplate;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.base.tool.XStorageTool;
import xstartup.data.XFileResult;
import xstartup.data.XFileType;
import xstartup.feature.api.annotation.XApiGet;
import java.util.Collections;
/**
* excel导入导出
*
* @author ZWT
* @date 2024/05/14 13:44
*/
@XText("Excel导入导出")
@XService
public class ExcelService {
/**
* 编辑制度导出
*
* @param context 上下文
* @return {@link XFileResult }
*/
@XText("编辑制度导出")
@XApiGet
public XFileResult exportPriceStrategy(XContext context) {
String fileSavePath = XStorageTool.getAbsolutePath("/temp/excel/编辑制度模板.xlsx");
//生成模板
EasyExcelFactory.write(FileUtil.touch(fileSavePath))
.registerWriteHandler(ExcelStyleTool.getStyleStrategy())
.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
.autoCloseStream(Boolean.TRUE)
.build()
.write(Collections.emptyList(),
EasyExcelUtil.writeSelectedSheet(ExcelSpaceOptimizeTemplate.class, 0, "编辑制度")
).finish();
return XFileResult.success(XFileType.APPLICATION_XLSX, fileSavePath);
}
}
package pps.core.space.service.data.base_excel;
import cn.hutool.core.date.DateTime;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import jakarta.validation.constraints.NotBlank;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import pps.core.common.excel.TimeRangeImpl;
import pps.core.common.excel.config.ExcelSelected;
import java.io.Serializable;
/**
* excel编辑制度模板
*
* @author ZWT
* @date 2024/05/14 13:51
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ExcelIgnoreUnannotated
public class ExcelSpaceOptimizeTemplate implements Serializable {
private static final long serialVersionUID = 2852207213902479260L;
/**
* 开始时间
*/
@NotBlank(message = "缺少开始时间")
@ExcelSelected(sourceClass = TimeRangeImpl.class)
@ExcelProperty(index = 0, value = "开始时间")
private String startTime;
/**
* 结束时间
*/
@NotBlank(message = "缺少结束时间")
@ExcelSelected(sourceClass = TimeRangeImpl.class)
@ExcelProperty(index = 1, value = "结束时间")
private String endTime;
/*------------------------------------ other ------------------------------------*/
/**
* 行号
*/
private Integer rowNum;
/**
* 开始
*/
private DateTime start;
/**
* 结束
*/
private DateTime end;
}
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