Search in sources :

Example 21 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project CSKY by SHU-Silence.

the class TeacherServiceImpl method getTeacherInfoBySId.

@Override
public ResultVO getTeacherInfoBySId(Integer sid, long currentPage) {
    Page<Teachers> page = new Page<>(currentPage, 5, true);
    QueryWrapper<Teachers> wrapper = new QueryWrapper<Teachers>().eq("schoolId", sid);
    teachersMapper.selectPage(page, wrapper);
    TeacherPageVo teacherPageVo = new TeacherPageVo();
    BeanUtils.copyProperties(page, teacherPageVo);
    List<TeacherVo> teacherVos = new ArrayList<>();
    for (Teachers record : page.getRecords()) {
        TeacherVo teacherVo = new TeacherVo(record.getId(), record.getTname(), record.getStudydir());
        teacherVos.add(teacherVo);
    }
    teacherPageVo.setTeacherVoList(teacherVos);
    return new ResultVO(ResStatus.OK, "老师分页信息查询成功", teacherPageVo);
}
Also used : ResultVO(shu.java.csky.vo.ResultVO) Teachers(shu.java.csky.entity.Teachers) ArrayList(java.util.ArrayList) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) TeacherVo(shu.java.csky.vo.TeacherVo) TeacherPageVo(shu.java.csky.vo.page.TeacherPageVo)

Example 22 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project CSKY by SHU-Silence.

the class TeacherServiceImpl method fuzzyQueryTeacher.

@Override
public ResultVO fuzzyQueryTeacher(TeacherPageParam teacherPageParam) {
    String text = teacherPageParam.getText();
    Integer uid = teacherPageParam.getUid();
    if (text == null)
        return new ResultVO(ResStatus.OK, "text为空", null);
    QueryWrapper<Teachers> wrapper = new QueryWrapper<>();
    wrapper.eq("schoolId", teacherPageParam.getSid()).and(wr -> {
        wr.like("tname", text).or().like("studydir", text).or().like("eduresume", text).or().like("proresume", text).or().like("tURL", text);
    }).orderByAsc("id");
    IPage<Teachers> teachersPage = new Page<>();
    BeanUtils.copyProperties(teacherPageParam, teachersPage);
    teachersMapper.selectPage(teachersPage, wrapper);
    TeacherPageVo teacherPageVo = new TeacherPageVo();
    BeanUtils.copyProperties(teachersPage, teacherPageVo);
    ArrayList<TeacherVo> teacherVos = new ArrayList<>();
    for (Teachers record : teachersPage.getRecords()) {
        TeacherVo teacherVo = new TeacherVo();
        BeanUtils.copyProperties(record, teacherVo);
        teacherVos.add(teacherVo);
    }
    // 若查到数据,插入search表
    if (!teacherVos.isEmpty() && (uid != null))
        searchMapper.insert(new Search(0, uid, text));
    teacherPageVo.setTeacherVoList(teacherVos);
    return new ResultVO(ResStatus.OK, "教师模糊查询分页信息返回成功", teacherPageVo);
}
Also used : ResultVO(shu.java.csky.vo.ResultVO) TeacherPageParam(shu.java.csky.vo.param.TeacherPageParam) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) TeacherVo(shu.java.csky.vo.TeacherVo) SearchMapper(shu.java.csky.dao.SearchMapper) Resource(javax.annotation.Resource) ResultVO(shu.java.csky.vo.ResultVO) TeacherService(shu.java.csky.TeacherService) Search(shu.java.csky.entity.Search) TeachersMapper(shu.java.csky.dao.TeachersMapper) ArrayList(java.util.ArrayList) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) Teachers(shu.java.csky.entity.Teachers) ResStatus(shu.java.csky.vo.ResStatus) List(java.util.List) TeacherPageVo(shu.java.csky.vo.page.TeacherPageVo) Service(org.springframework.stereotype.Service) IPage(com.baomidou.mybatisplus.core.metadata.IPage) BeanUtils(org.springframework.beans.BeanUtils) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) ArrayList(java.util.ArrayList) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) Teachers(shu.java.csky.entity.Teachers) Search(shu.java.csky.entity.Search) TeacherVo(shu.java.csky.vo.TeacherVo) TeacherPageVo(shu.java.csky.vo.page.TeacherPageVo)

Example 23 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project pig by pig-mesh.

the class SqlFilterArgumentResolver method resolveArgument.

/**
 * @param parameter 入参集合
 * @param mavContainer model 和 view
 * @param webRequest web相关
 * @param binderFactory 入参解析
 * @return 检查后新的page对象
 * <p>
 * page 只支持查询 GET .如需解析POST获取请求报文体处理
 */
@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) {
    HttpServletRequest request = webRequest.getNativeRequest(HttpServletRequest.class);
    String[] ascs = request.getParameterValues("ascs");
    String[] descs = request.getParameterValues("descs");
    String current = request.getParameter("current");
    String size = request.getParameter("size");
    Page<?> page = new Page<>();
    if (StrUtil.isNotBlank(current)) {
        page.setCurrent(Long.parseLong(current));
    }
    if (StrUtil.isNotBlank(size)) {
        page.setSize(Long.parseLong(size));
    }
    List<OrderItem> orderItemList = new ArrayList<>();
    Optional.ofNullable(ascs).ifPresent(s -> orderItemList.addAll(Arrays.stream(s).filter(sqlInjectPredicate()).map(OrderItem::asc).collect(Collectors.toList())));
    Optional.ofNullable(descs).ifPresent(s -> orderItemList.addAll(Arrays.stream(s).filter(sqlInjectPredicate()).map(OrderItem::desc).collect(Collectors.toList())));
    page.addOrder(orderItemList);
    return page;
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) OrderItem(com.baomidou.mybatisplus.core.metadata.OrderItem) ArrayList(java.util.ArrayList) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page)

Example 24 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project incubator-hugegraph-toolchain by apache.

the class JobManagerService method list.

public IPage<JobManager> list(int connId, int pageNo, int pageSize, String content) {
    QueryWrapper<JobManager> query = Wrappers.query();
    query.eq("conn_id", connId);
    if (!content.isEmpty()) {
        query.like("job_name", content);
    }
    query.orderByDesc("create_time");
    Page<JobManager> page = new Page<>(pageNo, pageSize);
    IPage<JobManager> list = this.mapper.selectPage(page, query);
    list.getRecords().forEach(task -> {
        if (task.getJobStatus() == JobStatus.LOADING) {
            List<LoadTask> tasks = this.taskService.taskListByJob(task.getId());
            JobStatus status = JobStatus.SUCCESS;
            for (LoadTask loadTask : tasks) {
                if (loadTask.getStatus().inRunning() || loadTask.getStatus() == LoadStatus.PAUSED || loadTask.getStatus() == LoadStatus.STOPPED) {
                    status = JobStatus.LOADING;
                    break;
                }
                if (loadTask.getStatus() == LoadStatus.FAILED) {
                    status = JobStatus.FAILED;
                    break;
                }
            }
            if (status == JobStatus.SUCCESS || status == JobStatus.FAILED) {
                task.setJobStatus(status);
                this.update(task);
            }
        }
        Date endDate = task.getJobStatus() == JobStatus.FAILED || task.getJobStatus() == JobStatus.SUCCESS ? task.getUpdateTime() : HubbleUtil.nowDate();
        task.setJobDuration(endDate.getTime() - task.getCreateTime().getTime());
    });
    return list;
}
Also used : LoadTask(com.baidu.hugegraph.entity.load.LoadTask) JobStatus(com.baidu.hugegraph.entity.enums.JobStatus) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) JobManager(com.baidu.hugegraph.entity.load.JobManager) Date(java.util.Date)

Example 25 with Page

use of com.baomidou.mybatisplus.extension.plugins.pagination.Page in project plank by MistraR.

the class Barbarossa method sellStock.

/**
 * 减仓或清仓股票
 *
 * @param date 日期
 */
private void sellStock(Date date) {
    List<HoldShares> holdShares = holdSharesMapper.selectList(new QueryWrapper<>());
    if (CollectionUtils.isNotEmpty(holdShares)) {
        for (HoldShares holdShare : holdShares) {
            if (!DateUtils.isSameDay(holdShare.getBuyTime(), date) && holdShare.getBuyTime().getTime() < date.getTime()) {
                Page<DailyRecord> selectPage = dailyRecordMapper.selectPage(new Page<>(1, 25), new QueryWrapper<DailyRecord>().eq("code", holdShare.getCode()).ge("date", DateUtils.addDays(date, -plankConfig.getDeficitMovingAverage() - 9)).le("date", date).orderByDesc("date"));
                // 今日数据明细
                DailyRecord todayRecord = selectPage.getRecords().get(0);
                List<DailyRecord> dailyRecords = selectPage.getRecords().size() >= plankConfig.getDeficitMovingAverage() ? selectPage.getRecords().subList(0, plankConfig.getDeficitMovingAverage() - 1) : selectPage.getRecords();
                // 止损均线价格
                OptionalDouble average = dailyRecords.stream().mapToDouble(dailyRecord -> dailyRecord.getClosePrice().doubleValue()).average();
                if (average.isPresent() && (todayRecord.getLowest().doubleValue() <= average.getAsDouble())) {
                    // 跌破均线,清仓
                    this.clearanceStock(holdShare, ClearanceReasonEnum.BREAK_POSITION, date, average.getAsDouble());
                    continue;
                }
                // 盘中最低收益率
                double profitLowRatio = todayRecord.getLowest().subtract(holdShare.getBuyPrice()).divide(holdShare.getBuyPrice(), 2, RoundingMode.HALF_UP).doubleValue();
                if (profitLowRatio < plankConfig.getDeficitRatio().doubleValue()) {
                    // 跌破止损线,清仓
                    this.clearanceStock(holdShare, ClearanceReasonEnum.BREAK_LOSS_LINE, date, holdShare.getBuyPrice().doubleValue() * (1 + plankConfig.getDeficitRatio().doubleValue()));
                    continue;
                }
                if (holdShare.getFifteenProfit() && profitLowRatio <= plankConfig.getProfitClearanceRatio().doubleValue()) {
                    // 收益回撤到10个点止盈清仓
                    this.clearanceStock(holdShare, ClearanceReasonEnum.TAKE_PROFIT, date, holdShare.getBuyPrice().doubleValue() * 1.1);
                    continue;
                }
                // 盘中最高收益率
                double profitHighRatio = todayRecord.getHighest().subtract(holdShare.getBuyPrice()).divide(holdShare.getBuyPrice(), 2, RoundingMode.HALF_UP).doubleValue();
                if (profitHighRatio >= plankConfig.getProfitUpperRatio().doubleValue()) {
                    // 收益25% 清仓
                    this.clearanceStock(holdShare, ClearanceReasonEnum.PROFIT_UPPER, date, holdShare.getBuyPrice().doubleValue() * (1 + plankConfig.getProfitUpperRatio().doubleValue()));
                } else if (profitHighRatio >= plankConfig.getProfitQuarterRatio().doubleValue()) {
                    // 收益20% 减至1/4仓
                    this.reduceStock(holdShare, ClearanceReasonEnum.POSITION_QUARTER, date, todayRecord, holdShare.getBuyPrice().doubleValue() * (1 + plankConfig.getProfitQuarterRatio().doubleValue()));
                } else if (profitHighRatio >= plankConfig.getProfitHalfRatio().doubleValue()) {
                    // 收益15% 减半仓
                    this.reduceStock(holdShare, ClearanceReasonEnum.POSITION_HALF, date, todayRecord, holdShare.getBuyPrice().doubleValue() * (1 + plankConfig.getProfitHalfRatio().doubleValue()));
                }
                // 持股超过x天 并且 收益不到20% 清仓
                if (Days.daysBetween(new LocalDate(holdShare.getBuyTime().getTime()), new LocalDate(date.getTime())).getDays() > plankConfig.getClearanceDay()) {
                    this.clearanceStock(holdShare, ClearanceReasonEnum.TEN_DAY, date, todayRecord.getOpenPrice().add(todayRecord.getClosePrice()).doubleValue() / 2);
                }
            }
        }
    }
}
Also used : DateUtil(cn.hutool.core.date.DateUtil) Date(java.util.Date) DailyRecord(com.mistra.plank.pojo.entity.DailyRecord) DragonList(com.mistra.plank.pojo.entity.DragonList) HoldShares(com.mistra.plank.pojo.entity.HoldShares) PlankConfig(com.mistra.plank.config.PlankConfig) Clearance(com.mistra.plank.pojo.entity.Clearance) BigDecimal(java.math.BigDecimal) Map(java.util.Map) TradeRecord(com.mistra.plank.pojo.entity.TradeRecord) Days(org.joda.time.Days) HoldSharesMapper(com.mistra.plank.mapper.HoldSharesMapper) HttpUtil(com.mistra.plank.util.HttpUtil) RoundingMode(java.math.RoundingMode) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) FundHoldingsParam(com.mistra.plank.pojo.param.FundHoldingsParam) TradeRecordMapper(com.mistra.plank.mapper.TradeRecordMapper) FundHoldingsTrackingMapper(com.mistra.plank.mapper.FundHoldingsTrackingMapper) LinkedBlockingQueue(java.util.concurrent.LinkedBlockingQueue) Collectors(java.util.stream.Collectors) Stock(com.mistra.plank.pojo.entity.Stock) UploadDataListener(com.mistra.plank.util.UploadDataListener) Objects(java.util.Objects) List(java.util.List) Slf4j(lombok.extern.slf4j.Slf4j) JSONObject(com.alibaba.fastjson.JSONObject) StockRealTimePrice(com.mistra.plank.pojo.dto.StockRealTimePrice) DragonListMapper(com.mistra.plank.mapper.DragonListMapper) ThreadPoolExecutor(java.util.concurrent.ThreadPoolExecutor) OptionalDouble(java.util.OptionalDouble) SimpleDateFormat(java.text.SimpleDateFormat) HashMap(java.util.HashMap) EasyExcel(com.alibaba.excel.EasyExcel) CollectionUtils(org.apache.commons.collections4.CollectionUtils) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) JSONArray(com.alibaba.fastjson.JSONArray) CommandLineRunner(org.springframework.boot.CommandLineRunner) ExecutorService(java.util.concurrent.ExecutorService) DailyRecordMapper(com.mistra.plank.mapper.DailyRecordMapper) DateTime(org.joda.time.DateTime) IOException(java.io.IOException) DateUtils(org.apache.commons.lang3.time.DateUtils) TimeUnit(java.util.concurrent.TimeUnit) LocalDate(org.joda.time.LocalDate) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) Component(org.springframework.stereotype.Component) ClearanceReasonEnum(com.mistra.plank.pojo.enums.ClearanceReasonEnum) JSON(com.alibaba.fastjson.JSON) NamedThreadFactory(cn.hutool.core.thread.NamedThreadFactory) ForeignFundHoldingsTracking(com.mistra.plank.pojo.entity.ForeignFundHoldingsTracking) StockMapper(com.mistra.plank.mapper.StockMapper) Collections(java.util.Collections) ClearanceMapper(com.mistra.plank.mapper.ClearanceMapper) HoldShares(com.mistra.plank.pojo.entity.HoldShares) DailyRecord(com.mistra.plank.pojo.entity.DailyRecord) LocalDate(org.joda.time.LocalDate) OptionalDouble(java.util.OptionalDouble)

Aggregations

Page (com.baomidou.mybatisplus.extension.plugins.pagination.Page)239 IPage (com.baomidou.mybatisplus.core.metadata.IPage)171 QueryWrapper (com.baomidou.mybatisplus.core.conditions.query.QueryWrapper)62 ApiOperation (io.swagger.annotations.ApiOperation)38 ArrayList (java.util.ArrayList)29 LoginUser (org.jeecg.common.system.vo.LoginUser)26 Test (org.junit.Test)24 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)22 RequiresPermissions (org.apache.shiro.authz.annotation.RequiresPermissions)19 LambdaQueryWrapper (com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper)17 JSONObject (com.alibaba.fastjson.JSONObject)15 PageInfo (org.apache.dolphinscheduler.api.utils.PageInfo)13 Result (org.jeecg.common.api.vo.Result)12 User (org.apache.dolphinscheduler.dao.entity.User)11 OrderItem (com.baomidou.mybatisplus.core.metadata.OrderItem)9 java.util (java.util)9 HashMap (java.util.HashMap)9 Project (org.apache.dolphinscheduler.dao.entity.Project)9 Service (org.springframework.stereotype.Service)9 IOException (java.io.IOException)8