| | |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import com.supersavedriving.driver.core.util.ToolUtil; |
| | | import com.supersavedriving.driver.modular.system.dao.AccountChangeDetailMapper; |
| | | import com.supersavedriving.driver.modular.system.dao.RevenueMapper; |
| | | import com.supersavedriving.driver.modular.system.model.AppUser; |
| | | import com.supersavedriving.driver.modular.system.model.Driver; |
| | | import com.supersavedriving.driver.modular.system.model.Order; |
| | | import com.supersavedriving.driver.modular.system.model.Revenue; |
| | | import com.supersavedriving.driver.modular.system.model.*; |
| | | import com.supersavedriving.driver.modular.system.service.IAppUserService; |
| | | import com.supersavedriving.driver.modular.system.service.IDriverService; |
| | | import com.supersavedriving.driver.modular.system.service.IOrderService; |
| | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | |
| | | @Autowired |
| | | private IDriverService driverService; |
| | | |
| | | @Resource |
| | | private AccountChangeDetailMapper accountChangeDetailMapper; |
| | | |
| | | |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<CommissionListWarpper> queryCommissionList(Integer driverId, String time, Integer pageNum, Integer pageSize) throws Exception { |
| | | public List<CommissionListWarpper> queryCommissionList(Integer driverId, String time, Integer pageNum, Integer pageSize,Integer type) throws Exception { |
| | | pageNum = (pageNum - 1) * pageSize; |
| | | Wrapper<Revenue> wrapper = new EntityWrapper<Revenue>().eq("type", 2).eq("userType", 2) |
| | | .eq("userId", driverId); |
| | | ArrayList<Integer> objects = new ArrayList<>(); |
| | | objects.add(1); |
| | | objects.add(4); |
| | | objects.add(5); |
| | | objects.add(7); |
| | | Wrapper<AccountChangeDetail> wrapper = new EntityWrapper<AccountChangeDetail>().eq("userType", 2) |
| | | .eq("userId", driverId).eq("type",1).in("changeType",objects); |
| | | if(ToolUtil.isNotEmpty(type)){ |
| | | wrapper.eq("changeType",type); |
| | | } |
| | | if(ToolUtil.isNotEmpty(time)){ |
| | | wrapper.eq("DATE_FORMAT(createTime, '%Y年%m月')", time); |
| | | } |
| | | List<Revenue> revenues = this.selectList(wrapper.last(" order by createTime desc limit " + pageNum + ", " + pageSize)); |
| | | List<AccountChangeDetail> revenues = accountChangeDetailMapper.selectList(wrapper.last(" order by createTime desc limit " + pageNum + ", " + pageSize)); |
| | | List<CommissionListWarpper> list = new ArrayList<>(); |
| | | for (Revenue revenue : revenues) { |
| | | for (AccountChangeDetail revenue : revenues) { |
| | | CommissionListWarpper commissionListWarpper = new CommissionListWarpper(); |
| | | commissionListWarpper.setCreateTime(revenue.getCreateTime().getTime()); |
| | | commissionListWarpper.setAmount(revenue.getAmount()); |
| | | Order order = orderService.selectById(revenue.getOrderId()); |
| | | if(null != order.getUserId()){ |
| | | AppUser appUser = appUserService.selectById(order.getUserId()); |
| | | if(null != appUser.getInviterType() && appUser.getInviterType() == 2 && appUser.getInviterId().compareTo(driverId) == 0){ |
| | | commissionListWarpper.setUserType(1); |
| | | } |
| | | commissionListWarpper.setUserType(revenue.getChangeType()); |
| | | commissionListWarpper.setMoney(revenue.getOldData()); |
| | | if(revenue.getChangeType()==4){ |
| | | commissionListWarpper.setAmount(revenue.getNewData()-revenue.getOldData()); |
| | | }else { |
| | | commissionListWarpper.setAmount(revenue.getOldData()-revenue.getNewData()); |
| | | } |
| | | if(null == commissionListWarpper.getUserType()){ |
| | | Driver driver = driverService.selectById(order.getDriverId()); |
| | | if(null != driver.getInviterType() && driver.getInviterType() == 2 && driver.getInviterId().compareTo(driverId) == 0){ |
| | | commissionListWarpper.setUserType(2); |
| | | } |
| | | } |
| | | |
| | | list.add(commissionListWarpper); |
| | | } |
| | | return list; |
| | |
| | | public List<PerformanceRankingWarpper> queryDriverRank(Integer type, String time, Integer dayType) { |
| | | return this.baseMapper.queryDriverRank(type, time, dayType); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取代理商账户余额 |
| | | * @param companyId |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Double queryAgentBalance(Integer companyId) { |
| | | return this.baseMapper.queryAgentBalance(companyId); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取平台账户余额 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Double queryCompanyBalance() { |
| | | return this.baseMapper.queryCompanyBalance(); |
| | | } |
| | | } |