From 9e4440e8ce1ed3c72932f3f62f4d05f55c9080e6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 17 八月 2023 11:49:12 +0800
Subject: [PATCH] 新增加司机端接口

---
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/RevenueServiceImpl.java |  120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 119 insertions(+), 1 deletions(-)

diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/RevenueServiceImpl.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/RevenueServiceImpl.java
index 3590285..a8eb581 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/RevenueServiceImpl.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/RevenueServiceImpl.java
@@ -1,10 +1,24 @@
 package com.supersavedriving.driver.modular.system.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+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.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 com.supersavedriving.driver.modular.system.service.IRevenueService;
+import com.supersavedriving.driver.modular.system.warpper.CommissionListWarpper;
+import com.supersavedriving.driver.modular.system.warpper.PerformanceRankingWarpper;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
 * 收入记录
@@ -13,4 +27,108 @@
 */
 @Service
 public class RevenueServiceImpl extends ServiceImpl<RevenueMapper, Revenue> implements IRevenueService {
+
+    @Autowired
+    private IOrderService orderService;
+
+    @Autowired
+    private IAppUserService appUserService;
+
+    @Autowired
+    private IDriverService driverService;
+
+    @Resource
+    private AccountChangeDetailMapper accountChangeDetailMapper;
+
+
+
+
+
+
+    /**
+     * 获取司机佣金记录
+     * @param driverId
+     * @param time
+     * @param pageNum
+     * @param pageSize
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public List<CommissionListWarpper> queryCommissionList(Integer driverId, String time, Integer pageNum, Integer pageSize,Integer type) throws Exception {
+        pageNum = (pageNum - 1) * pageSize;
+        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<AccountChangeDetail> revenues = accountChangeDetailMapper.selectList(wrapper.last(" order by createTime desc limit " + pageNum + ", " + pageSize));
+        List<CommissionListWarpper> list = new ArrayList<>();
+        for (AccountChangeDetail revenue : revenues) {
+            CommissionListWarpper commissionListWarpper = new CommissionListWarpper();
+            commissionListWarpper.setCreateTime(revenue.getCreateTime().getTime());
+            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());
+            }
+
+            list.add(commissionListWarpper);
+        }
+        return list;
+    }
+
+    /**
+     * 获取司机总收入
+     * @param driverId
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public Double queryTotalAmount(Integer driverId) throws Exception {
+        return this.baseMapper.queryTotalAmount(driverId);
+    }
+
+
+    /**
+     * 获取司机佣金收入排行
+     * @param time
+     * @param dayType
+     * @return
+     */
+    @Override
+    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();
+    }
 }

--
Gitblit v1.7.1