Commit ac1c5aec authored by tianchao's avatar tianchao
parents 46df6b5f 77105a08
package pps.core.space.entity; package pps.core.space.entity;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
import pps.core.common.entity.BaseModel; import pps.core.common.entity.BaseModel;
import xstartup.annotation.XText; import xstartup.annotation.XText;
...@@ -14,6 +17,9 @@ import java.io.Serializable; ...@@ -14,6 +17,9 @@ import java.io.Serializable;
* @date 2023/09/05 * @date 2023/09/05
*/ */
@Data @Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class SpaceOptimizeShortDurationView extends BaseModel implements Serializable { public class SpaceOptimizeShortDurationView extends BaseModel implements Serializable {
@XText("井口记录ID") @XText("井口记录ID")
......
package pps.core.space.entity; package pps.core.space.entity;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
import pps.core.common.entity.BaseModel; import pps.core.common.entity.BaseModel;
import xstartup.annotation.XText; import xstartup.annotation.XText;
...@@ -14,6 +17,9 @@ import java.io.Serializable; ...@@ -14,6 +17,9 @@ import java.io.Serializable;
* @date 2023/09/05 * @date 2023/09/05
*/ */
@Data @Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class SpaceOptimizeShortWellheadView extends BaseModel implements Serializable { public class SpaceOptimizeShortWellheadView extends BaseModel implements Serializable {
@XText("短期优化周期ID") @XText("短期优化周期ID")
......
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.space.entity.SpaceOptimizeShortDurationEnt; import pps.core.space.entity.SpaceOptimizeShortDurationEnt;
/**
* 短期间开优化井口制度记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortDurationMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortDurationMapper")
public interface SpaceOptimizeShortDurationMapper extends BaseMapper<SpaceOptimizeShortDurationEnt> { public interface SpaceOptimizeShortDurationMapper extends BaseMapper<SpaceOptimizeShortDurationEnt> {
} }
...@@ -5,9 +5,21 @@ import pps.core.space.entity.SpaceOptimizeShortDurationView; ...@@ -5,9 +5,21 @@ import pps.core.space.entity.SpaceOptimizeShortDurationView;
import java.util.List; import java.util.List;
/**
* 短期间开优化井口制度记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortDurationViewMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortDurationViewMapper")
public interface SpaceOptimizeShortDurationViewMapper { public interface SpaceOptimizeShortDurationViewMapper {
SpaceOptimizeShortDurationView selectOne(SpaceOptimizeShortDurationView record); SpaceOptimizeShortDurationView selectOne(SpaceOptimizeShortDurationView record);
/**
* 查询井口列表已优化后为准
*
* @param record 记录
* @return {@link List}<{@link SpaceOptimizeShortDurationView}>
*/
List<SpaceOptimizeShortDurationView> selectList(SpaceOptimizeShortDurationView record); List<SpaceOptimizeShortDurationView> selectList(SpaceOptimizeShortDurationView record);
} }
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.space.entity.SpaceOptimizeShortPeriodEnt; import pps.core.space.entity.SpaceOptimizeShortPeriodEnt;
/**
* 短期间开优化周期记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortPeriodMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortPeriodMapper")
public interface SpaceOptimizeShortPeriodMapper extends BaseMapper<SpaceOptimizeShortPeriodEnt> { public interface SpaceOptimizeShortPeriodMapper extends BaseMapper<SpaceOptimizeShortPeriodEnt> {
} }
...@@ -5,6 +5,12 @@ import pps.core.space.entity.SpaceOptimizeShortPeriodView; ...@@ -5,6 +5,12 @@ import pps.core.space.entity.SpaceOptimizeShortPeriodView;
import java.util.List; import java.util.List;
/**
* 短期间开优化周期记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortPeriodViewMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortPeriodViewMapper")
public interface SpaceOptimizeShortPeriodViewMapper { public interface SpaceOptimizeShortPeriodViewMapper {
SpaceOptimizeShortPeriodView selectOne(SpaceOptimizeShortPeriodView record); SpaceOptimizeShortPeriodView selectOne(SpaceOptimizeShortPeriodView record);
......
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.space.entity.SpaceOptimizeShortWellheadEnt; import pps.core.space.entity.SpaceOptimizeShortWellheadEnt;
/**
* 短期间开优化井口记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortWellheadMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortWellheadMapper")
public interface SpaceOptimizeShortWellheadMapper extends BaseMapper<SpaceOptimizeShortWellheadEnt> { public interface SpaceOptimizeShortWellheadMapper extends BaseMapper<SpaceOptimizeShortWellheadEnt> {
} }
...@@ -5,6 +5,12 @@ import pps.core.space.entity.SpaceOptimizeShortWellheadView; ...@@ -5,6 +5,12 @@ import pps.core.space.entity.SpaceOptimizeShortWellheadView;
import java.util.List; import java.util.List;
/**
* 短期间开优化井口记录
*
* @author ZWT
* @date 2023/09/07
*/
@Repository(value = "pps.core.space.mapper.SpaceOptimizeShortWellheadViewMapper") @Repository(value = "pps.core.space.mapper.SpaceOptimizeShortWellheadViewMapper")
public interface SpaceOptimizeShortWellheadViewMapper { public interface SpaceOptimizeShortWellheadViewMapper {
SpaceOptimizeShortWellheadView selectOne(SpaceOptimizeShortWellheadView record); SpaceOptimizeShortWellheadView selectOne(SpaceOptimizeShortWellheadView record);
......
package pps.core.space.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import pps.core.space.entity.SpaceOptimizeShortDurationEnt;
import pps.core.space.entity.SpaceOptimizeShortDurationView;
import pps.core.space.mapper.SpaceOptimizeShortDurationMapper;
import pps.core.space.mapper.SpaceOptimizeShortDurationViewMapper;
import pps.core.space.service.data.space_optimize_short_duration.*;
import xstartup.annotation.XService;
import xstartup.base.XContext;
import xstartup.base.data.CustomQueryInput;
import xstartup.base.util.XCopyUtils;
import xstartup.data.XPageResult;
import xstartup.data.XServiceResult;
import xstartup.data.XSingleResult;
import xstartup.error.XError;
import xstartup.feature.api.annotation.XApiAnonymous;
import xstartup.feature.api.annotation.XApiGet;
import xstartup.feature.api.annotation.XApiPost;
import xstartup.feature.mybatis.helper.XMapperHelper;
import java.util.List;
@XService
public class SpaceOptimizeShortDurationService {
@XApiAnonymous
@XApiPost
public XServiceResult createSpaceOptimizeShortDuration(XContext context, CreateSpaceOptimizeShortDurationInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
SpaceOptimizeShortDurationEnt entity = new SpaceOptimizeShortDurationEnt();
XCopyUtils.copyObject(input, entity);
mapper.insert(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult updateSpaceOptimizeShortDuration(XContext context, UpdateSpaceOptimizeShortDurationInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
QueryWrapper<SpaceOptimizeShortDurationEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortDurationEnt::getId, input.getId());
SpaceOptimizeShortDurationEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
XCopyUtils.copyObject(input, entity);
mapper.updateById(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult deleteSpaceOptimizeShortDuration(XContext context, DeleteSpaceOptimizeShortDurationInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
QueryWrapper<SpaceOptimizeShortDurationEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortDurationEnt::getId, input.getId());
SpaceOptimizeShortDurationEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
mapper.deleteById(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiGet
public XSingleResult<GetSpaceOptimizeShortDurationOutput> getSpaceOptimizeShortDuration(XContext context, GetSpaceOptimizeShortDurationInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
QueryWrapper<SpaceOptimizeShortDurationEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortDurationEnt::getId, input.getId());
SpaceOptimizeShortDurationEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XSingleResult.error(context, XError.NotFound);
}
GetSpaceOptimizeShortDurationOutput output = new GetSpaceOptimizeShortDurationOutput();
XCopyUtils.copyObject(entity, output);
return XSingleResult.success(output);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortDurationOutput> querySpaceOptimizeShortDuration(XContext context, QuerySpaceOptimizeShortDurationInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
QueryWrapper<SpaceOptimizeShortDurationEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().like(SpaceOptimizeShortDurationEnt::getId, input.getId())
.eq(SpaceOptimizeShortDurationEnt::getIsDeleted, input.getIsDeleted())
.like(SpaceOptimizeShortDurationEnt::getCreateById, input.getCreateById())
.like(SpaceOptimizeShortDurationEnt::getCreateByName, input.getCreateByName())
.eq(SpaceOptimizeShortDurationEnt::getCreateTime, input.getCreateTime())
.like(SpaceOptimizeShortDurationEnt::getModifyById, input.getModifyById())
.like(SpaceOptimizeShortDurationEnt::getModifyByName, input.getModifyByName())
.eq(SpaceOptimizeShortDurationEnt::getModifyTime, input.getModifyTime())
.like(SpaceOptimizeShortDurationEnt::getRecordId, input.getRecordId())
.like(SpaceOptimizeShortDurationEnt::getShortPeriodId, input.getShortPeriodId())
.like(SpaceOptimizeShortDurationEnt::getWellheadId, input.getWellheadId())
.eq(SpaceOptimizeShortDurationEnt::getIsOptimize, input.getIsOptimize())
.like(SpaceOptimizeShortDurationEnt::getGenerationTypeKey, input.getGenerationTypeKey())
.like(SpaceOptimizeShortDurationEnt::getOpenWellTime, input.getOpenWellTime())
.like(SpaceOptimizeShortDurationEnt::getCloseWellTime, input.getCloseWellTime());
return XMapperHelper.query(mapper, input, queryWrapper, QuerySpaceOptimizeShortDurationOutput.class);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortDurationOutput> dynamicQuerySpaceOptimizeShortDuration(XContext context, CustomQueryInput input) {
SpaceOptimizeShortDurationMapper mapper = context.getBean(SpaceOptimizeShortDurationMapper.class);
return XMapperHelper.query(mapper, input, SpaceOptimizeShortDurationEnt.class, QuerySpaceOptimizeShortDurationOutput.class);
}
@XApiAnonymous
@XApiGet
public XSingleResult<GetSpaceOptimizeShortDurationViewOutput> getSpaceOptimizeShortDurationView(XContext context, GetSpaceOptimizeShortDurationViewInput input) {
SpaceOptimizeShortDurationViewMapper mapper = context.getBean(SpaceOptimizeShortDurationViewMapper.class);
SpaceOptimizeShortDurationView record = new SpaceOptimizeShortDurationView();
XCopyUtils.copyObject(input, record);
SpaceOptimizeShortDurationView view = mapper.selectOne(record);
if (view == null) {
return XSingleResult.error(context, XError.NotFound);
}
GetSpaceOptimizeShortDurationViewOutput output = new GetSpaceOptimizeShortDurationViewOutput();
XCopyUtils.copyObject(view, output);
return XSingleResult.success(output);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortDurationViewOutput> querySpaceOptimizeShortDurationView(XContext context, QuerySpaceOptimizeShortDurationViewInput input) {
SpaceOptimizeShortDurationViewMapper mapper = context.getBean(SpaceOptimizeShortDurationViewMapper.class);
SpaceOptimizeShortDurationView record = new SpaceOptimizeShortDurationView();
XCopyUtils.copyObject(input, record);
PageHelper.startPage(input.getPage(), input.getLimit());
List<SpaceOptimizeShortDurationView> list = mapper.selectList(record);
PageInfo<SpaceOptimizeShortDurationView> pageInfo = new PageInfo<>(list);
List<QuerySpaceOptimizeShortDurationViewOutput> outputs = XCopyUtils.copyNewList(pageInfo.getList(), QuerySpaceOptimizeShortDurationViewOutput.class);
return XPageResult.success(outputs, input, pageInfo.getTotal());
}
}
package pps.core.space.service; package pps.core.space.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import cn.hutool.core.collection.CollUtil;
import com.github.pagehelper.PageHelper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageInfo; import pps.core.space.entity.SpaceOptimizeShortDurationView;
import pps.core.space.entity.SpaceOptimizeShortPeriodEnt; import pps.core.space.entity.SpaceOptimizeShortPeriodEnt;
import pps.core.space.entity.SpaceOptimizeShortPeriodView; import pps.core.space.entity.SpaceOptimizeShortWellheadEnt;
import pps.core.space.mapper.SpaceOptimizeShortDurationViewMapper;
import pps.core.space.mapper.SpaceOptimizeShortPeriodMapper; import pps.core.space.mapper.SpaceOptimizeShortPeriodMapper;
import pps.core.space.mapper.SpaceOptimizeShortPeriodViewMapper; import pps.core.space.mapper.SpaceOptimizeShortWellheadMapper;
import pps.core.space.service.data.space_optimize_short_period.*; import pps.core.space.service.data.space_optimize_short_duration.GetSpaceOptimizeShortDurationOutput;
import pps.core.space.service.data.space_optimize_short_period.GetSpaceOptimizeShortPeriodViewInput;
import pps.core.space.service.data.space_optimize_short_period.GetSpaceOptimizeShortPeriodViewOutput;
import pps.core.space.service.data.space_optimize_short_wellhead.GetSpaceOptimizeShortWellheadViewOutput;
import xstartup.annotation.XService; import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext; import xstartup.base.XContext;
import xstartup.base.data.CustomQueryInput;
import xstartup.base.util.XCopyUtils; import xstartup.base.util.XCopyUtils;
import xstartup.data.XPageResult;
import xstartup.data.XServiceResult;
import xstartup.data.XSingleResult; import xstartup.data.XSingleResult;
import xstartup.error.XError;
import xstartup.feature.api.annotation.XApiAnonymous; import xstartup.feature.api.annotation.XApiAnonymous;
import xstartup.feature.api.annotation.XApiGet; import xstartup.feature.api.annotation.XApiGet;
import xstartup.feature.api.annotation.XApiPost;
import xstartup.feature.mybatis.helper.XMapperHelper;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* 短期间开优化模块
*
* @author ZWT
* @date 2023/09/07
*/
@XService @XService
@XText("短期间开优化模块")
public class SpaceOptimizeShortPeriodService { public class SpaceOptimizeShortPeriodService {
@XApiAnonymous
@XApiPost
public XServiceResult createSpaceOptimizeShortPeriod(XContext context, CreateSpaceOptimizeShortPeriodInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
SpaceOptimizeShortPeriodEnt entity = new SpaceOptimizeShortPeriodEnt();
XCopyUtils.copyObject(input, entity);
mapper.insert(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult updateSpaceOptimizeShortPeriod(XContext context, UpdateSpaceOptimizeShortPeriodInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
QueryWrapper<SpaceOptimizeShortPeriodEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortPeriodEnt::getId, input.getId());
SpaceOptimizeShortPeriodEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
XCopyUtils.copyObject(input, entity);
mapper.updateById(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult deleteSpaceOptimizeShortPeriod(XContext context, DeleteSpaceOptimizeShortPeriodInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
QueryWrapper<SpaceOptimizeShortPeriodEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortPeriodEnt::getId, input.getId());
SpaceOptimizeShortPeriodEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
mapper.deleteById(entity);
return XServiceResult.OK;
}
/**
* 短期间开优化--详情
*
* @param context 上下文
* @param input 输入
* @return {@link XSingleResult}<{@link GetSpaceOptimizeShortPeriodViewOutput}>
*/
@XApiAnonymous @XApiAnonymous
@XApiGet @XApiGet
public XSingleResult<GetSpaceOptimizeShortPeriodOutput> getSpaceOptimizeShortPeriod(XContext context, GetSpaceOptimizeShortPeriodInput input) { @XText("短期间开优化--详情")
public XSingleResult<GetSpaceOptimizeShortPeriodViewOutput> getSpaceOptimizeShortPeriodView(XContext context, GetSpaceOptimizeShortPeriodViewInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class); SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
QueryWrapper<SpaceOptimizeShortPeriodEnt> queryWrapper = new QueryWrapper<>(); //查当日记录
queryWrapper.lambda().eq(SpaceOptimizeShortPeriodEnt::getId, input.getId()); SpaceOptimizeShortPeriodEnt period = mapper.selectOne(
SpaceOptimizeShortPeriodEnt entity = mapper.selectOne(queryWrapper); new LambdaQueryWrapper<SpaceOptimizeShortPeriodEnt>()
if (entity == null) { .eq(SpaceOptimizeShortPeriodEnt::getLineId, input.getLineId())
return XSingleResult.error(context, XError.NotFound); .apply("DATE_FORMAT( optimize_date, '%Y-%m-%d' ) = curdate()")
);
GetSpaceOptimizeShortPeriodViewOutput output = new GetSpaceOptimizeShortPeriodViewOutput();
if (Objects.nonNull(period)) {
String shortPeriodId = period.getId();
//查井口列表
SpaceOptimizeShortWellheadMapper wellheadMapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
List<SpaceOptimizeShortWellheadEnt> wellheadList = wellheadMapper.selectList(new LambdaQueryWrapper<SpaceOptimizeShortWellheadEnt>()
.eq(SpaceOptimizeShortWellheadEnt::getShortPeriodId, shortPeriodId)
);
if (CollUtil.isNotEmpty(wellheadList)) {
List<GetSpaceOptimizeShortWellheadViewOutput> wellheadViewOutputs = XCopyUtils.copyNewList(wellheadList, GetSpaceOptimizeShortWellheadViewOutput.class);
//查井口间隔配置
SpaceOptimizeShortDurationViewMapper durationViewMapper = context.getBean(SpaceOptimizeShortDurationViewMapper.class);
List<SpaceOptimizeShortDurationView> durationViewList = durationViewMapper.selectList(SpaceOptimizeShortDurationView.builder()
.shortPeriodId(shortPeriodId)
.build()
);
if (CollUtil.isNotEmpty(durationViewList)) {
Map<String, List<GetSpaceOptimizeShortDurationOutput>> collect = XCopyUtils.copyNewList(durationViewList, GetSpaceOptimizeShortDurationOutput.class)
.stream()
.collect(Collectors.groupingBy(GetSpaceOptimizeShortDurationOutput::getWellheadId));
wellheadViewOutputs.forEach(w -> {
if (collect.containsKey(w.getWellheadId())) {
w.setDurationList(collect.get(w.getWellheadId()));
} else {
w.setDurationList(new ArrayList<>(0));
} }
GetSpaceOptimizeShortPeriodOutput output = new GetSpaceOptimizeShortPeriodOutput(); });
XCopyUtils.copyObject(entity, output);
return XSingleResult.success(output);
} }
output.setWellheadList(wellheadViewOutputs);
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortPeriodOutput> querySpaceOptimizeShortPeriod(XContext context, QuerySpaceOptimizeShortPeriodInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
QueryWrapper<SpaceOptimizeShortPeriodEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().like(SpaceOptimizeShortPeriodEnt::getId, input.getId())
.eq(SpaceOptimizeShortPeriodEnt::getIsDeleted, input.getIsDeleted())
.like(SpaceOptimizeShortPeriodEnt::getCreateById, input.getCreateById())
.like(SpaceOptimizeShortPeriodEnt::getCreateByName, input.getCreateByName())
.eq(SpaceOptimizeShortPeriodEnt::getCreateTime, input.getCreateTime())
.like(SpaceOptimizeShortPeriodEnt::getModifyById, input.getModifyById())
.like(SpaceOptimizeShortPeriodEnt::getModifyByName, input.getModifyByName())
.eq(SpaceOptimizeShortPeriodEnt::getModifyTime, input.getModifyTime())
.like(SpaceOptimizeShortPeriodEnt::getLineId, input.getLineId())
.like(SpaceOptimizeShortPeriodEnt::getInstitutionId, input.getInstitutionId())
.eq(SpaceOptimizeShortPeriodEnt::getOptimizeState, input.getOptimizeState())
.eq(SpaceOptimizeShortPeriodEnt::getOptimizeDate, input.getOptimizeDate());
return XMapperHelper.query(mapper, input, queryWrapper, QuerySpaceOptimizeShortPeriodOutput.class);
} }
} else {
@XApiAnonymous output.setWellheadList(new ArrayList<>(0));
@XApiGet
public XPageResult<QuerySpaceOptimizeShortPeriodOutput> dynamicQuerySpaceOptimizeShortPeriod(XContext context, CustomQueryInput input) {
SpaceOptimizeShortPeriodMapper mapper = context.getBean(SpaceOptimizeShortPeriodMapper.class);
return XMapperHelper.query(mapper, input, SpaceOptimizeShortPeriodEnt.class, QuerySpaceOptimizeShortPeriodOutput.class);
} }
@XApiAnonymous
@XApiGet
public XSingleResult<GetSpaceOptimizeShortPeriodViewOutput> getSpaceOptimizeShortPeriodView(XContext context, GetSpaceOptimizeShortPeriodViewInput input) {
SpaceOptimizeShortPeriodViewMapper mapper = context.getBean(SpaceOptimizeShortPeriodViewMapper.class);
SpaceOptimizeShortPeriodView record = new SpaceOptimizeShortPeriodView();
XCopyUtils.copyObject(input, record);
SpaceOptimizeShortPeriodView view = mapper.selectOne(record);
if (view == null) {
return XSingleResult.error(context, XError.NotFound);
}
GetSpaceOptimizeShortPeriodViewOutput output = new GetSpaceOptimizeShortPeriodViewOutput();
XCopyUtils.copyObject(view, output);
return XSingleResult.success(output); return XSingleResult.success(output);
} }
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortPeriodViewOutput> querySpaceOptimizeShortPeriodView(XContext context, QuerySpaceOptimizeShortPeriodViewInput input) {
SpaceOptimizeShortPeriodViewMapper mapper = context.getBean(SpaceOptimizeShortPeriodViewMapper.class);
SpaceOptimizeShortPeriodView record = new SpaceOptimizeShortPeriodView();
XCopyUtils.copyObject(input, record);
PageHelper.startPage(input.getPage(), input.getLimit());
List<SpaceOptimizeShortPeriodView> list = mapper.selectList(record);
PageInfo<SpaceOptimizeShortPeriodView> pageInfo = new PageInfo<>(list);
List<QuerySpaceOptimizeShortPeriodViewOutput> outputs = XCopyUtils.copyNewList(pageInfo.getList(), QuerySpaceOptimizeShortPeriodViewOutput.class);
return XPageResult.success(outputs, input, pageInfo.getTotal());
}
} }
\ No newline at end of file
package pps.core.space.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import pps.core.space.entity.SpaceOptimizeShortWellheadEnt;
import pps.core.space.entity.SpaceOptimizeShortWellheadView;
import pps.core.space.mapper.SpaceOptimizeShortWellheadMapper;
import pps.core.space.mapper.SpaceOptimizeShortWellheadViewMapper;
import pps.core.space.service.data.space_optimize_short_wellhead.*;
import xstartup.annotation.XService;
import xstartup.base.XContext;
import xstartup.base.data.CustomQueryInput;
import xstartup.base.util.XCopyUtils;
import xstartup.data.XPageResult;
import xstartup.data.XServiceResult;
import xstartup.data.XSingleResult;
import xstartup.error.XError;
import xstartup.feature.api.annotation.XApiAnonymous;
import xstartup.feature.api.annotation.XApiGet;
import xstartup.feature.api.annotation.XApiPost;
import xstartup.feature.mybatis.helper.XMapperHelper;
import java.util.List;
@XService
public class SpaceOptimizeShortWellheadService {
@XApiAnonymous
@XApiPost
public XServiceResult createSpaceOptimizeShortWellhead(XContext context, CreateSpaceOptimizeShortWellheadInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
SpaceOptimizeShortWellheadEnt entity = new SpaceOptimizeShortWellheadEnt();
XCopyUtils.copyObject(input, entity);
mapper.insert(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult updateSpaceOptimizeShortWellhead(XContext context, UpdateSpaceOptimizeShortWellheadInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
QueryWrapper<SpaceOptimizeShortWellheadEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortWellheadEnt::getId, input.getId());
SpaceOptimizeShortWellheadEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
XCopyUtils.copyObject(input, entity);
mapper.updateById(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiPost
public XServiceResult deleteSpaceOptimizeShortWellhead(XContext context, DeleteSpaceOptimizeShortWellheadInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
QueryWrapper<SpaceOptimizeShortWellheadEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortWellheadEnt::getId, input.getId());
SpaceOptimizeShortWellheadEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XServiceResult.error(context, XError.NotFound);
}
mapper.deleteById(entity);
return XServiceResult.OK;
}
@XApiAnonymous
@XApiGet
public XSingleResult<GetSpaceOptimizeShortWellheadOutput> getSpaceOptimizeShortWellhead(XContext context, GetSpaceOptimizeShortWellheadInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
QueryWrapper<SpaceOptimizeShortWellheadEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SpaceOptimizeShortWellheadEnt::getId, input.getId());
SpaceOptimizeShortWellheadEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) {
return XSingleResult.error(context, XError.NotFound);
}
GetSpaceOptimizeShortWellheadOutput output = new GetSpaceOptimizeShortWellheadOutput();
XCopyUtils.copyObject(entity, output);
return XSingleResult.success(output);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortWellheadOutput> querySpaceOptimizeShortWellhead(XContext context, QuerySpaceOptimizeShortWellheadInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
QueryWrapper<SpaceOptimizeShortWellheadEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().like(SpaceOptimizeShortWellheadEnt::getId, input.getId())
.eq(SpaceOptimizeShortWellheadEnt::getIsDeleted, input.getIsDeleted())
.like(SpaceOptimizeShortWellheadEnt::getCreateById, input.getCreateById())
.like(SpaceOptimizeShortWellheadEnt::getCreateByName, input.getCreateByName())
.eq(SpaceOptimizeShortWellheadEnt::getCreateTime, input.getCreateTime())
.like(SpaceOptimizeShortWellheadEnt::getModifyById, input.getModifyById())
.like(SpaceOptimizeShortWellheadEnt::getModifyByName, input.getModifyByName())
.eq(SpaceOptimizeShortWellheadEnt::getModifyTime, input.getModifyTime())
.like(SpaceOptimizeShortWellheadEnt::getShortPeriodId, input.getShortPeriodId())
.like(SpaceOptimizeShortWellheadEnt::getWellheadId, input.getWellheadId())
.like(SpaceOptimizeShortWellheadEnt::getWellNumber, input.getWellNumber());
return XMapperHelper.query(mapper, input, queryWrapper, QuerySpaceOptimizeShortWellheadOutput.class);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortWellheadOutput> dynamicQuerySpaceOptimizeShortWellhead(XContext context, CustomQueryInput input) {
SpaceOptimizeShortWellheadMapper mapper = context.getBean(SpaceOptimizeShortWellheadMapper.class);
return XMapperHelper.query(mapper, input, SpaceOptimizeShortWellheadEnt.class, QuerySpaceOptimizeShortWellheadOutput.class);
}
@XApiAnonymous
@XApiGet
public XSingleResult<GetSpaceOptimizeShortWellheadViewOutput> getSpaceOptimizeShortWellheadView(XContext context, GetSpaceOptimizeShortWellheadViewInput input) {
SpaceOptimizeShortWellheadViewMapper mapper = context.getBean(SpaceOptimizeShortWellheadViewMapper.class);
SpaceOptimizeShortWellheadView record = new SpaceOptimizeShortWellheadView();
XCopyUtils.copyObject(input, record);
SpaceOptimizeShortWellheadView view = mapper.selectOne(record);
if (view == null) {
return XSingleResult.error(context, XError.NotFound);
}
GetSpaceOptimizeShortWellheadViewOutput output = new GetSpaceOptimizeShortWellheadViewOutput();
XCopyUtils.copyObject(view, output);
return XSingleResult.success(output);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceOptimizeShortWellheadViewOutput> querySpaceOptimizeShortWellheadView(XContext context, QuerySpaceOptimizeShortWellheadViewInput input) {
SpaceOptimizeShortWellheadViewMapper mapper = context.getBean(SpaceOptimizeShortWellheadViewMapper.class);
SpaceOptimizeShortWellheadView record = new SpaceOptimizeShortWellheadView();
XCopyUtils.copyObject(input, record);
PageHelper.startPage(input.getPage(), input.getLimit());
List<SpaceOptimizeShortWellheadView> list = mapper.selectList(record);
PageInfo<SpaceOptimizeShortWellheadView> pageInfo = new PageInfo<>(list);
List<QuerySpaceOptimizeShortWellheadViewOutput> outputs = XCopyUtils.copyNewList(pageInfo.getList(), QuerySpaceOptimizeShortWellheadViewOutput.class);
return XPageResult.success(outputs, input, pageInfo.getTotal());
}
}
package pps.core.space.service.data.space_optimize_short_duration; package pps.core.space.service.data.space_optimize_short_duration;
import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.util.Date; /**
* 井口时段配置
*
* @author ZWT
* @date 2023/09/08
*/
@Data
public class GetSpaceOptimizeShortDurationOutput { public class GetSpaceOptimizeShortDurationOutput {
@XText("ID")
private String id;
@XText("是否删除(0_是;1_否)")
private Integer isDeleted;
@XText("创建人ID")
private String createById;
@XText("创建人名称")
private String createByName;
@XText("创建时间")
private Date createTime;
@XText("修改人ID")
private String modifyById;
@XText("修改人名称")
private String modifyByName;
@XText("修改时间")
private Date modifyTime;
@XText("井口记录ID")
private String recordId;
@XText("短期优化周期ID")
private String shortPeriodId;
@XText("井口ID") @XText("井口ID")
private String wellheadId; private String wellheadId;
...@@ -49,125 +26,4 @@ public class GetSpaceOptimizeShortDurationOutput { ...@@ -49,125 +26,4 @@ public class GetSpaceOptimizeShortDurationOutput {
@XText("关井时间") @XText("关井时间")
private String closeWellTime; private String closeWellTime;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getRecordId() {
return this.recordId;
}
public void setRecordId(String value) {
this.recordId = value;
}
public String getShortPeriodId() {
return this.shortPeriodId;
}
public void setShortPeriodId(String value) {
this.shortPeriodId = value;
}
public String getWellheadId() {
return this.wellheadId;
}
public void setWellheadId(String value) {
this.wellheadId = value;
}
public Integer getIsOptimize() {
return this.isOptimize;
}
public void setIsOptimize(Integer value) {
this.isOptimize = value;
}
public String getGenerationTypeKey() {
return this.generationTypeKey;
}
public void setGenerationTypeKey(String value) {
this.generationTypeKey = value;
}
public String getOpenWellTime() {
return this.openWellTime;
}
public void setOpenWellTime(String value) {
this.openWellTime = value;
}
public String getCloseWellTime() {
return this.closeWellTime;
}
public void setCloseWellTime(String value) {
this.closeWellTime = value;
}
} }
package pps.core.space.service.data.space_optimize_short_period; package pps.core.space.service.data.space_optimize_short_period;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.util.Date; /**
* 短期间开优化周期记录
*
* @author ZWT
* @date 2023/09/07
*/
@Data
public class GetSpaceOptimizeShortPeriodViewInput { public class GetSpaceOptimizeShortPeriodViewInput {
@XText("ID")
private String id;
@XText("是否删除(0_是;1_否)")
private Integer isDeleted;
@XText("创建人ID")
private String createById;
@XText("创建人名称")
private String createByName;
@XText("创建时间")
private Date createTime;
@XText("修改人ID")
private String modifyById;
@XText("修改人名称")
private String modifyByName;
@XText("修改时间")
private Date modifyTime;
@XText("线路ID") @XText("线路ID")
@NotBlank(message = "缺少线路ID")
private String lineId; private String lineId;
@XText("间开制度ID")
private String institutionId;
@XText("优化状态(0_已优化;1_未优化)")
private Integer optimizeState;
@XText("优化日期")
private Date optimizeDate;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getLineId() {
return this.lineId;
}
public void setLineId(String value) {
this.lineId = value;
}
public String getInstitutionId() {
return this.institutionId;
}
public void setInstitutionId(String value) {
this.institutionId = value;
}
public Integer getOptimizeState() {
return this.optimizeState;
}
public void setOptimizeState(Integer value) {
this.optimizeState = value;
}
public Date getOptimizeDate() {
return this.optimizeDate;
}
public void setOptimizeDate(Date value) {
this.optimizeDate = value;
}
} }
package pps.core.space.service.data.space_optimize_short_period; package pps.core.space.service.data.space_optimize_short_period;
import lombok.Data;
import pps.core.space.service.data.space_optimize_short_wellhead.GetSpaceOptimizeShortWellheadViewOutput;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.util.Date; import java.util.List;
/**
* 短期间开优化周期记录
*
* @author ZWT
* @date 2023/09/07
*/
@Data
public class GetSpaceOptimizeShortPeriodViewOutput { public class GetSpaceOptimizeShortPeriodViewOutput {
@XText("ID")
private String id;
@XText("是否删除(0_是;1_否)")
private Integer isDeleted;
@XText("创建人ID")
private String createById;
@XText("创建人名称")
private String createByName;
@XText("创建时间")
private Date createTime;
@XText("修改人ID")
private String modifyById;
@XText("修改人名称")
private String modifyByName;
@XText("修改时间")
private Date modifyTime;
@XText("线路ID")
private String lineId;
@XText("间开制度ID")
private String institutionId;
@XText("优化状态(0_已优化;1_未优化)")
private Integer optimizeState;
@XText("优化日期")
private Date optimizeDate;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getLineId() {
return this.lineId;
}
public void setLineId(String value) {
this.lineId = value;
}
public String getInstitutionId() {
return this.institutionId;
}
public void setInstitutionId(String value) {
this.institutionId = value;
}
public Integer getOptimizeState() {
return this.optimizeState;
}
public void setOptimizeState(Integer value) {
this.optimizeState = value;
}
public Date getOptimizeDate() {
return this.optimizeDate;
}
public void setOptimizeDate(Date value) {
this.optimizeDate = value;
}
/**
* 井口列表
*/
@XText("井口列表")
private List<GetSpaceOptimizeShortWellheadViewOutput> wellheadList;
} }
package pps.core.space.service.data.space_optimize_short_wellhead; package pps.core.space.service.data.space_optimize_short_wellhead;
import lombok.Data;
import pps.core.space.service.data.space_optimize_short_duration.GetSpaceOptimizeShortDurationOutput;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.util.Date; import java.util.List;
/**
* 短期间开优化井口记录
*
* @author ZWT
* @date 2023/09/08
*/
@Data
public class GetSpaceOptimizeShortWellheadViewOutput { public class GetSpaceOptimizeShortWellheadViewOutput {
@XText("ID")
private String id;
@XText("是否删除(0_是;1_否)")
private Integer isDeleted;
@XText("创建人ID")
private String createById;
@XText("创建人名称")
private String createByName;
@XText("创建时间")
private Date createTime;
@XText("修改人ID")
private String modifyById;
@XText("修改人名称")
private String modifyByName;
@XText("修改时间")
private Date modifyTime;
@XText("短期优化周期ID")
private String shortPeriodId;
@XText("井口ID") @XText("井口ID")
private String wellheadId; private String wellheadId;
...@@ -38,92 +21,9 @@ public class GetSpaceOptimizeShortWellheadViewOutput { ...@@ -38,92 +21,9 @@ public class GetSpaceOptimizeShortWellheadViewOutput {
@XText("井号") @XText("井号")
private String wellNumber; private String wellNumber;
public String getId() { /**
return this.id; * 井口时段配置
} */
@XText("井口时段配置")
public void setId(String value) { private List<GetSpaceOptimizeShortDurationOutput> durationList;
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getShortPeriodId() {
return this.shortPeriodId;
}
public void setShortPeriodId(String value) {
this.shortPeriodId = value;
}
public String getWellheadId() {
return this.wellheadId;
}
public void setWellheadId(String value) {
this.wellheadId = value;
}
public String getWellNumber() {
return this.wellNumber;
}
public void setWellNumber(String value) {
this.wellNumber = value;
}
} }
...@@ -44,12 +44,27 @@ ...@@ -44,12 +44,27 @@
where where
id=#{id} id=#{id}
</select> </select>
<select id="selectList" parameterType="pps.core.space.entity.SpaceOptimizeShortDurationView" <select id="selectList" parameterType="pps.core.space.entity.SpaceOptimizeShortDurationView"
resultMap="BaseResultMap"> resultMap="BaseResultMap">
select WITH opt_short AS (SELECT wellhead_id, is_optimize, open_well_time, close_well_time, generation_type_key
<include refid="Base_Column_List"/> FROM space_optimize_short_duration
from space_optimize_short_duration WHERE is_optimize = 0
where AND short_period_id = #{shortPeriodId})
id=#{id} SELECT *
FROM (SELECT wellhead_id,
is_optimize,
open_well_time,
close_well_time,
generation_type_key
FROM space_optimize_short_duration
WHERE is_optimize = 1
AND short_period_id = #{shortPeriodId}
AND wellhead_id NOT IN (SELECT wellhead_id FROM opt_short)
UNION ALL
SELECT *
FROM opt_short) d
ORDER BY d.wellhead_id,
d.open_well_time
</select> </select>
</mapper> </mapper>
\ No newline at end of file
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