src/main/java/com/yuanlrc/base/service/home/RunOrderService.java
(开头部分) 5KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package com.yuanlrc.base.service.home;
import com.yuanlrc.base.bean.PageBean;
import com.yuanlrc.base.dao.common.RunTypeDao;
import com.yuanlrc.base.dao.home.BalanceChangeDao;
import com.yuanlrc.base.dao.home.MemberDao;
import com.yuanlrc.base.dao.home.RunOrderDao;
import com.yuanlrc.base.entity.common.RunType;
import com.yuanlrc.base.entity.home.BalanceChange;
import com.yuanlrc.base.entity.home.Member;
import com.yuanlrc.base.entity.home.RunOrder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.*;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Service;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import javax.transaction.Transactional;
import java.math.BigDecimal;
import java.util.List;
/**
* 跑腿订单
*/
@Service
public class RunOrderService {
@Autowired
private RunOrderDao runOrderDao;
@Autowired
private MemberDao memberDao;
@Autowired
private RunTypeDao runTypeDao;
@Autowired
private BalanceChangeDao balanceDao;
/**
* 跑腿订单分页带条件查询
*/
public PageBean<RunOrder> findHomeList(RunOrder runOrder, PageBean<RunOrder> pageBean,Integer sort) {
Specification<RunOrder> specification = new Specification<RunOrder>() {
@Override
public Predicate toPredicate(Root<RunOrder> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
Predicate predicate = criteriaBuilder.like(root.get("title"), "%" + (runOrder.getTitle() == null ? "" : runOrder.getTitle()) + "%");
Predicate status = criteriaBuilder.equal(root.get("status"), RunOrder.RUNORDER_STATUS_START);
predicate = criteriaBuilder.and(predicate, status);
if(runOrder.getType()!=null && runOrder.getType().getId()!=null){
Predicate equal = criteriaBuilder.equal(root.get("type").get("id"), runOrder.getType().getId());
predicate = criteriaBuilder.and(predicate, equal);
}
后面还有 134 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。