From 6225c37d2f53adf26daf6b4859af5fb5c6fad088 Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期一, 15 五月 2023 16:45:34 +0800
Subject: [PATCH] broker 卡车公司端

---
 src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java |  974 ++++++++++++++++++++++++++++-----------------------------
 1 files changed, 479 insertions(+), 495 deletions(-)

diff --git a/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java b/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
index ff7f317..d5beb48 100644
--- a/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
+++ b/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
@@ -1,561 +1,545 @@
-package com.stylefeng.guns.modular.system.service.impl;
+    package com.stylefeng.guns.modular.system.service.impl;
 
-import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.date.DateUtil;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.baomidou.mybatisplus.plugins.Page;
-import com.baomidou.mybatisplus.service.impl.ServiceImpl;
-import com.stylefeng.guns.core.util.ToolUtil;
-import com.stylefeng.guns.modular.system.dao.*;
-import com.stylefeng.guns.modular.system.model.*;
-import com.stylefeng.guns.modular.system.service.ITBoxSizeService;
-import com.stylefeng.guns.modular.system.service.ITDriverService;
-import com.stylefeng.guns.modular.system.service.ITOrderService;
-import com.stylefeng.guns.modular.system.utils.GoogleMap.GoogleMapUtil;
-import com.stylefeng.guns.modular.system.utils.UserInfoUtil;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
+    import cn.hutool.core.bean.BeanUtil;
+    import cn.hutool.core.date.DateUtil;
+    import com.baomidou.mybatisplus.mapper.EntityWrapper;
+    import com.baomidou.mybatisplus.plugins.Page;
+    import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+    import com.stylefeng.guns.core.util.ToolUtil;
+    import com.stylefeng.guns.modular.system.dao.*;
+    import com.stylefeng.guns.modular.system.model.*;
+    import com.stylefeng.guns.modular.system.service.ITBoxSizeService;
+    import com.stylefeng.guns.modular.system.service.ITDriverService;
+    import com.stylefeng.guns.modular.system.service.ITOrderService;
+    import com.stylefeng.guns.modular.system.utils.GoogleMap.GoogleMapUtil;
+    import org.springframework.beans.factory.annotation.Autowired;
+    import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
-import java.math.BigDecimal;
-import java.math.BigInteger;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-import java.util.stream.Collectors;
+    import javax.annotation.Resource;
+    import java.math.BigDecimal;
+    import java.math.BigInteger;
+    import java.text.ParseException;
+    import java.text.SimpleDateFormat;
+    import java.util.*;
+    import java.util.stream.Collectors;
 
-/**
- * <p>
- *  服务实现类
- * </p>
- *
- * @author stylefeng
- * @since 2023-02-03
- */
-@Service
-public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> implements ITOrderService {
+    /**
+     * <p>
+     *  服务实现类
+     * </p>
+     *
+     * @author stylefeng
+     * @since 2023-02-03
+     */
+    @Service
+    public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> implements ITOrderService {
 
-    @Autowired
-    private TUserMapper tUserMapper;
+        @Autowired
+        private TUserMapper tUserMapper;
 
-    @Autowired
-    private UserMapper userMapper;
+        @Autowired
+        private UserMapper userMapper;
 
-    @Autowired
-    private TGoodsMapper tGoodsMapper;
+        @Autowired
+        private TGoodsMapper tGoodsMapper;
 
-    @Autowired
-    private TCompanyMapper tCompanyMapper;
+        @Autowired
+        private TCompanyMapper tCompanyMapper;
 
-    @Autowired
-    private TPriceMapper priceMapper;
+        @Autowired
+        private TPriceMapper priceMapper;
 
-    @Autowired
-    private TUserFeeSettingMapper tUserFeeSettingMapper;
+        @Autowired
+        private TUserFeeSettingMapper tUserFeeSettingMapper;
 
-    @Autowired
-    private TGroupMapper tGroupMapper;
+        @Autowired
+        private TGroupMapper tGroupMapper;
 
-    @Autowired
-    private TQuoteMapper tQuoteMapper;
+        @Autowired
+        private TQuoteMapper tQuoteMapper;
 
-    @Autowired
-    private ITBoxSizeService sizeService;
+        @Autowired
+        private ITBoxSizeService sizeService;
 
-    @Autowired
-    private GoogleMapUtil googleMapUtil;
+        @Autowired
+        private GoogleMapUtil googleMapUtil;
 
-    @Autowired
-    private TPortMapper portMapper;
+        @Autowired
+        private TPortMapper portMapper;
 
-    @Autowired
-    private WareHouseMapper wareHouseMapper;
+        @Autowired
+        private WareHouseMapper wareHouseMapper;
 
-    @Autowired
-    private DriverNoteMapper driverNoteMapper;
+        @Autowired
+        private DriverNoteMapper driverNoteMapper;
 
-    @Autowired
-    private ITDriverService driverService;
+        @Autowired
+        private ITDriverService driverService;
 
 
-    @Resource
-    private TCarriersMapper carriersMapper;
+        @Resource
+        private TCarriersMapper carriersMapper;
 
-    @Override
-    public List<ReceivableVo> getReceivable(Page<ReceivableVo> receivableVoPage, String time, String name) {
-        //TODO 时间保留
-        List<ReceivableVo> list = this.baseMapper.getReceivable(receivableVoPage,name);
+        @Override
+        public List<ReceivableVo> getReceivable(Page<ReceivableVo> receivableVoPage, String time, String name,int id) {
+            //TODO 时间保留
+            List<ReceivableVo> list = this.baseMapper.getReceivable(receivableVoPage,name,id);
 
-        Calendar instance = Calendar.getInstance();
-        instance.setTime(new Date());
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
-        String format = simpleDateFormat.format(new Date())+" 23:59:59";
-        // 30天
-        instance.add(Calendar.DATE,-30);
-        String time1 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
-        // 60tian
-        instance.add(Calendar.DATE,-30);
-        String time2 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
-        // 90tian
-        instance.add(Calendar.DATE,-30);
-        String time3 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
+            Calendar instance = Calendar.getInstance();
+            instance.setTime(new Date());
+            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+            String format = simpleDateFormat.format(new Date())+" 23:59:59";
+            // 30天
+            instance.add(Calendar.DATE,-30);
+            String time1 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
+            // 60tian
+            instance.add(Calendar.DATE,-30);
+            String time2 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
+            // 90tian
+            instance.add(Calendar.DATE,-30);
+            String time3 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
 
-        for (ReceivableVo receivableVo : list) {
-            // 根据id获取30天内的金额
-            receivableVo.setTwentyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),format,time1)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),format,time1));
+            for (ReceivableVo receivableVo : list) {
+                // 根据id获取30天内的金额
+                receivableVo.setTwentyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),format,time1)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),format,time1));
 
-            // 30-60tian
-            receivableVo.setThirtyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),time1,time2)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),time1,time2));
-            receivableVo.setSixtyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),time2,time3)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),time2,time3));
-            receivableVo.setNinetyDay(this.baseMapper.getNineDay(receivableVo.getUserId(),time3)==null?0:this.baseMapper.getNineDay(receivableVo.getUserId(),time3));
+                // 30-60tian
+                receivableVo.setThirtyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),time1,time2)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),time1,time2));
+                receivableVo.setSixtyDay(this.baseMapper.getTwentyDay(receivableVo.getUserId(),time2,time3)==null?0:this.baseMapper.getTwentyDay(receivableVo.getUserId(),time2,time3));
+                receivableVo.setNinetyDay(this.baseMapper.getNineDay(receivableVo.getUserId(),time3)==null?0:this.baseMapper.getNineDay(receivableVo.getUserId(),time3));
 
-        }
-        return list;
-    }
-
-    @Override
-    public List<ShouldPayVo> getPayList(Page<ShouldPayVo> receivableVoPage, String time, String name) {
-        List<ShouldPayVo> list = this.baseMapper.getPayList(receivableVoPage,name);
-
-        Calendar instance = Calendar.getInstance();
-        instance.setTime(new Date());
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
-        String format = simpleDateFormat.format(new Date())+" 23:59:59";
-        // 30天
-        instance.add(Calendar.DATE,-30);
-        String time1 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
-        // 60tian
-        instance.add(Calendar.DATE,-30);
-        String time2 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
-        // 90tian
-        instance.add(Calendar.DATE,-30);
-        String time3 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
-
-
-        for (ShouldPayVo shouldPayVo : list) {
-            shouldPayVo.setTwentyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),format,time1)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),format,time1));
-
-            // 30-60tian
-            shouldPayVo.setThirtyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time1,time2)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time1,time2));
-
-            shouldPayVo.setSixtyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time2,time3)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time2,time3));
-
-            shouldPayVo.setNinetyDay(this.baseMapper.getNineDayPay(shouldPayVo.getUserId(),time3)==null?0:this.baseMapper.getNineDayPay(shouldPayVo.getUserId(),time3));
-
-        }
-        return list;
-    }
-
-    @Override
-    public List<ReceivablesList> listOfReceivables(Page<ReceivablesList> receivableVoPage, String time, String name, Integer invoicesId, Integer orderId, Integer state) {
-        String sTime=null;
-        String eTime =null;
-        if(Objects.nonNull(time)){
-            sTime = time.split(" - ")[0]+" 00:00:01";
-            eTime = time.split(" - ")[1]+" 23:59:59";
-        }
-        List<ReceivablesList> receivablesLists = this.baseMapper.listOfReceivables(receivableVoPage, sTime, eTime, name, invoicesId, orderId, state);
-        for (ReceivablesList receivablesList : receivablesLists) {
-           Integer id= this.baseMapper.getPayStatus(receivablesList.getOrderId());
-            if(id==null){
-               receivablesList.setPayStatus(1);
-           }else {
-               receivablesList.setPayStatus(2);
-           }
-        }
-        return receivablesLists;
-    }
-
-    @Override
-    public List<PayList> listOfPay(Page<PayList> receivableVoPage, String time, String name, Integer billId, Integer orderId, Integer state) {
-        String sTime=null;
-        String eTime =null;
-        if(Objects.nonNull(time)){
-            sTime = time.split(" - ")[0]+" 00:00:01";
-            eTime = time.split(" - ")[1]+" 23:59:59";
-        }
-        List<PayList> list = this.baseMapper.listOfPay(receivableVoPage, sTime, eTime, name, billId, orderId, state);
-        return list;
-    }
-
-    @Override
-    public InvoicesCarVo listOPayInfo(Long number) {
-        InvoicesVo info1 = tUserMapper.getOrderInfo(number);
-        InvoicesCarVo info = new InvoicesCarVo();
-        BeanUtil.copyProperties(info1,info);
-
-        // 根据订单id 获取货物信息
-        Long id = info.getId();
-        TOrder tOrder = this.baseMapper.selectById(id);
-
-        List<TGoods> orders = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", id));
-        ArrayList<TGoodsVo> tGoodsVos = new ArrayList<>();
-        TCompany tCompany = tCompanyMapper.selectById(info.getCompanyId());
-        List<TBoxSize> tBoxSizes = sizeService.selectList(null);
-
-        for (TGoods order : orders) {
-            TGoodsVo tGoodsVo = new TGoodsVo();
-            tGoodsVo.setName(tCompany.getName());
-            tGoodsVo.setSize(order.getSize());
-            tGoodsVo.setKg(order.getKg());
-            String size = order.getSize();
-            for (TBoxSize tBoxSize : tBoxSizes) {
-                if(size.equals(tBoxSize.getBoxName())){
-                    tGoodsVo.setLength(tBoxSize.getBoxLength());
-                    tGoodsVo.setWidth(tBoxSize.getBoxWidth());
-                    tGoodsVo.setHeight(tBoxSize.getBoxHigh());
-                }
             }
-            tGoodsVos.add(tGoodsVo);
-        }
-        // 付卡车公司钱
-        BigDecimal payMoney = tOrder.getPayMoney();
-        Integer carriersId = tOrder.getCarriersId();
-        TCarriers tCarriers = carriersMapper.selectById(carriersId);
-        Double commission = tCarriers.getCommission();
-        BigDecimal multiply = new BigDecimal(commission).multiply(new BigDecimal(0.01));
-        BigDecimal multiply1 = payMoney.multiply(multiply);
-        info.setGoodsVos(tGoodsVos);
-        info.setAmount(multiply1.doubleValue());
-        return info;
-    }
-
-    @Override
-    public Boolean confirmationOfPayment(Long number, int type, String remark) {
-        Boolean b =false;
-        // 同意
-        if(type==1){
-             b = this.baseMapper.agreePay(number);
-        }else {
-             b = this.baseMapper.noAgreePay(number,remark);
+            return list;
         }
 
-        return b;
-    }
+        @Override
+        public List<ShouldPayVo> getPayList(Page<ShouldPayVo> receivableVoPage, String time, String name,int id) {
+            List<ShouldPayVo> list = this.baseMapper.getPayList(receivableVoPage,name,id);
 
-    @Override
-    public Boolean agreeOfPayment(Long number) {
-        return this.baseMapper.agreeOfPayment(number);
-    }
+            Calendar instance = Calendar.getInstance();
+            instance.setTime(new Date());
+            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+            String format = simpleDateFormat.format(new Date())+" 23:59:59";
+            // 30天
+            instance.add(Calendar.DATE,-30);
+            String time1 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
+            // 60tian
+            instance.add(Calendar.DATE,-30);
+            String time2 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
+            // 90tian
+            instance.add(Calendar.DATE,-30);
+            String time3 = simpleDateFormat.format(instance.getTime())+" 00:00:01";
 
-    @Resource
-    private TDriverMapper driverMapper;
 
-    @Resource
-    private TPowerUnitsMapper powerUnitsMapper;
+            for (ShouldPayVo shouldPayVo : list) {
+                shouldPayVo.setTwentyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),format,time1)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),format,time1));
 
-    @Override
-    public IndexInfo indexList(String time) {
-        IndexInfo indexInfo = new IndexInfo();
-        // 卡车公司收入时间
-        String sTime=null;
-        String eTime=null;
-        if(ToolUtil.isNotEmpty(time)){
-            sTime=time.split(" - ")[0]+" 00:00:01";
-            eTime=time.split(" - ")[1]+" 23:59:59";
+                // 30-60tian
+                shouldPayVo.setThirtyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time1,time2)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time1,time2));
+
+                shouldPayVo.setSixtyDay(this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time2,time3)==null?0:this.baseMapper.getTwentyDayPay(shouldPayVo.getUserId(),time2,time3));
+
+                shouldPayVo.setNinetyDay(this.baseMapper.getNineDayPay(shouldPayVo.getUserId(),time3)==null?0:this.baseMapper.getNineDayPay(shouldPayVo.getUserId(),time3));
+
+            }
+            return list;
         }
-        Integer companyId = UserInfoUtil.getId();
-        // 获取卡车公司收入
-        Double companyIncome = this.baseMapper.getCompanyIncome(companyId, sTime, eTime);
 
-        indexInfo.setAccountsReceivable(new BigDecimal(companyIncome));
-        // 获取卡车公司支出-》 是否存在承运商  -》算价格
-        EntityWrapper<TOrder> wrapper = new EntityWrapper<>();
-        wrapper.eq("company_id",companyId);
-        wrapper.eq("carriers_pay_status",1);
-        if(sTime!=null){
-            wrapper.between("success_time",sTime,eTime);
+        @Override
+        public List<ReceivablesList> listOfReceivables(Page<ReceivablesList> receivableVoPage, String time, String name, Integer invoicesId, Integer orderId, Integer state,Integer id) {
+            String sTime=null;
+            String eTime =null;
+            if(Objects.nonNull(time)){
+                sTime = time.split(" - ")[0]+" 00:00:01";
+                eTime = time.split(" - ")[1]+" 23:59:59";
+            }
+            List<ReceivablesList> receivablesLists = this.baseMapper.listOfReceivables(receivableVoPage, sTime, eTime, name, invoicesId, orderId, state,id);
+            for (ReceivablesList receivablesList : receivablesLists) {
+               Integer ids= this.baseMapper.getPayStatus(receivablesList.getOrderId());
+                if(ids==null){
+                   receivablesList.setPayStatus(1);
+               }else {
+                   receivablesList.setPayStatus(2);
+               }
+            }
+            return receivablesLists;
         }
-        List<TOrder> orders = this.baseMapper.selectList(wrapper);
-        // 找出有承运商的订单
-        List<TOrder> collect = orders.stream().filter(o -> ToolUtil.isNotEmpty(o.getCarriersId())).collect(Collectors.toList());
-        // 付给承运商的钱
-        BigDecimal disburse = new BigDecimal(BigInteger.ZERO);
-        for (TOrder tOrder : collect) {
-            TCarriers tCarriers = carriersMapper.selectById(tOrder.getCarriersId());
-            Double commission = tCarriers.getCommission();
+
+        @Override
+        public List<PayList> listOfPay(Page<PayList> receivableVoPage, String time, String name, Integer billId, Integer orderId, Integer state, Integer id) {
+            String sTime=null;
+            String eTime =null;
+            if(Objects.nonNull(time)){
+                sTime = time.split(" - ")[0]+" 00:00:01";
+                eTime = time.split(" - ")[1]+" 23:59:59";
+            }
+            List<PayList> list = this.baseMapper.listOfPay(receivableVoPage, sTime, eTime, name, billId, orderId, state,id);
+            return list;
+        }
+
+        @Override
+        public InvoicesCarVo listOPayInfo(Long number) {
+            InvoicesVo info1 = tUserMapper.getOrderInfo(number);
+            InvoicesCarVo info = new InvoicesCarVo();
+            BeanUtil.copyProperties(info1,info);
+
+            // 根据订单id 获取货物信息
+            Long id = info.getId();
+            TOrder tOrder = this.baseMapper.selectById(id);
+
+            List<TGoods> orders = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", id));
+            ArrayList<TGoodsVo> tGoodsVos = new ArrayList<>();
+            TCompany tCompany = tCompanyMapper.selectById(info.getCompanyId());
+
+            for (TGoods order : orders) {
+                TGoodsVo tGoodsVo = new TGoodsVo();
+                tGoodsVo.setName(tCompany.getName());
+                tGoodsVo.setSize(order.getSize());
+                tGoodsVo.setKg(order.getKg());
+                String size = order.getSize();
+                tGoodsVo.setType(size);
+                tGoodsVos.add(tGoodsVo);
+            }
+            // 付卡车公司钱
             BigDecimal payMoney = tOrder.getPayMoney();
-            if(ToolUtil.isNotEmpty(commission)){
-                BigDecimal bigDecimal = new BigDecimal(commission);
-                BigDecimal multiply = payMoney.multiply(bigDecimal).setScale(2, BigDecimal.ROUND_HALF_UP);
-                disburse = disburse.add(multiply);
-            }
+            Integer carriersId = tOrder.getCarriersId();
+            TCarriers tCarriers = carriersMapper.selectById(carriersId);
+            Double commission = tCarriers.getCommission();
+            BigDecimal multiply = new BigDecimal(commission).multiply(new BigDecimal(0.01));
+            BigDecimal multiply1 = payMoney.multiply(multiply);
+            info.setGoodsVos(tGoodsVos);
+            info.setAmount(multiply1.doubleValue());
+            return info;
         }
-        indexInfo.setAccountsPayable(disburse);
-        indexInfo.setPlatformRevenue(indexInfo.getAccountsReceivable().subtract(indexInfo.getAccountsPayable()));
-        // 所有的信息
-        // 所有司机
-        Integer integer = driverMapper.selectCount(new EntityWrapper<TDriver>().eq("company_id", companyId).eq("remove",0));
-        indexInfo.setDriver(integer);
-        //车头
-        Integer integer1 = powerUnitsMapper.selectCount(new EntityWrapper<TPowerUnits>().eq("company_id", companyId).eq("type", 1));
-        indexInfo.setPowerUnits(integer1);
-        // 车架
-        indexInfo.setChassises(powerUnitsMapper.selectCount(new EntityWrapper<TPowerUnits>().eq("company_id", companyId).eq("type", 2)));
-        // 总订单
-        indexInfo.setOrdersTotal(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId)));
-        //
-        indexInfo.setInTransit(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).eq("status","7")));
-        indexInfo.setDispatching(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).eq("status","0")));
-        indexInfo.setCanceled(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).eq("status","16")));
-        indexInfo.setCompleted(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).eq("status","1")));
-        //获取当前公司的订单数量  根据当前月推算前12个月
-        ArrayList<IndexMonth> indexMonths = new ArrayList<>();
-        //获取当前月份
 
-        Calendar instance = Calendar.getInstance();
-        instance.setTime(new Date());
-        for (int i = 0; i <12; i++) {
-            if(i==0){
-                IndexMonth indexMonth = new IndexMonth();
-                int month = DateUtil.thisMonth();
-                indexMonth.setMonth(month);
-                indexMonth.setOrderNumber(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).between("pay_time",DateUtil.beginOfMonth(new Date()),DateUtil.endOfMonth(new Date()))));
-                indexMonths.add(indexMonth);
+        @Override
+        public Boolean confirmationOfPayment(Long number, int type, String remark) {
+            Boolean b =false;
+            // 同意
+            if(type==1){
+                 b = this.baseMapper.agreePay(number);
             }else {
-                IndexMonth indexMonth = new IndexMonth();
-                instance.add(Calendar.MONTH, -1);
-                Date time1 = instance.getTime();
-                int month = DateUtil.month(time1);
-                indexMonth.setMonth(month);
-                indexMonth.setOrderNumber(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",companyId).between("pay_time",DateUtil.beginOfMonth(time1),DateUtil.endOfMonth(time1))));
-                indexMonths.add(indexMonth);
+                 b = this.baseMapper.noAgreePay(number,remark);
             }
+
+            return b;
         }
-        indexInfo.setList(indexMonths);
-        return indexInfo;
-    }
 
-
-
-
-    @Override
-    public InvoicesVoTwo listOfReceivablesInfo(Long orderId) {
-        InvoicesVoTwo invoicesVoTwo = new InvoicesVoTwo();
-        TOrder tOrder = this.baseMapper.selectById(orderId);
-        invoicesVoTwo.setId(tOrder.getId());
-        invoicesVoTwo.setPickupDate(tOrder.getShipmentDate());
-        invoicesVoTwo.setDeliveryDate(tOrder.getDeliveryDate());
-        invoicesVoTwo.setInvoiceNumber(tOrder.getInvoiceNumber());
-        invoicesVoTwo.setRemark(tOrder.getRemark());
-        // 根据订单id 获取价格
-        List<TPrice> prices = priceMapper.selectList(new EntityWrapper<TPrice>().eq("order_id", tOrder.getId()));
-        ArrayList<TPriceVo> priceVos = new ArrayList<TPriceVo>();
-        for (TPrice price : prices) {
-            TPriceVo tPriceVo = new TPriceVo();
-            tPriceVo.setId(price.getId());
-            tPriceVo.setPrice(price.getCarPrice());
-            tPriceVo.setType(price.getType());
-            priceVos.add(tPriceVo);
+        @Override
+        public Boolean agreeOfPayment(Long number) {
+            return this.baseMapper.agreeOfPayment(number);
         }
-        invoicesVoTwo.setPriceVos(priceVos);
 
-        return invoicesVoTwo;
-    }
-    @Override
-    public InvoicesVoOne listOfReceivablesInfoOne(Long orderId) {
-        InvoicesVoOne info = tUserMapper.getOrderInfoOne(orderId);
-        // 根据订单id 获取货物信息
-        Long id = info.getId();
+        @Resource
+        private TDriverMapper driverMapper;
 
-        TOrder tOrder = this.baseMapper.selectById(id);
-        List<TGoods> orders = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", id));
-        ArrayList<TGoodsVo> tGoodsVos = new ArrayList<>();
-        TCompany tCompany = tCompanyMapper.selectById(info.getCompanyId());
-        List<TBoxSize> tBoxSizes = sizeService.selectList(null);
-        for (TGoods order : orders) {
-            TGoodsVo tGoodsVo = new TGoodsVo();
-            tGoodsVo.setName(tCompany.getName());
-            tGoodsVo.setSize(order.getSize());
-            tGoodsVo.setKg(order.getKg());
-            String size = order.getSize();
-            for (TBoxSize tBoxSize : tBoxSizes) {
-                if(size.equals(tBoxSize.getBoxName())){
-                    tGoodsVo.setLength(tBoxSize.getBoxLength());
-                    tGoodsVo.setWidth(tBoxSize.getBoxWidth());
-                    tGoodsVo.setHeight(tBoxSize.getBoxHigh());
+        @Resource
+        private TPowerUnitsMapper powerUnitsMapper;
+
+        @Override
+        public IndexInfo indexList(String time,int id) {
+            IndexInfo indexInfo = new IndexInfo();
+            // 卡车公司收入时间
+            String sTime=null;
+            String eTime=null;
+            if(ToolUtil.isNotEmpty(time)){
+                sTime=time.split(" - ")[0]+" 00:00:01";
+                eTime=time.split(" - ")[1]+" 23:59:59";
+            }
+            // 获取卡车公司收入
+            Double companyIncome = this.baseMapper.getCompanyIncome(id, sTime, eTime);
+
+            indexInfo.setAccountsReceivable(new BigDecimal(companyIncome));
+            // 获取卡车公司支出-》 是否存在承运商  -》算价格
+            EntityWrapper<TOrder> wrapper = new EntityWrapper<>();
+            wrapper.eq("company_id",id);
+            wrapper.eq("carriers_pay_status",1);
+            if(sTime!=null){
+                wrapper.between("success_time",sTime,eTime);
+            }
+            List<TOrder> orders = this.baseMapper.selectList(wrapper);
+            // 找出有承运商的订单
+            List<TOrder> collect = orders.stream().filter(o -> ToolUtil.isNotEmpty(o.getCarriersId())).collect(Collectors.toList());
+            // 付给承运商的钱
+            BigDecimal disburse = new BigDecimal(BigInteger.ZERO);
+            for (TOrder tOrder : collect) {
+                TCarriers tCarriers = carriersMapper.selectById(tOrder.getCarriersId());
+                Double commission = tCarriers.getCommission();
+                BigDecimal payMoney = tOrder.getPayMoney();
+                if(ToolUtil.isNotEmpty(commission)){
+                    BigDecimal bigDecimal = new BigDecimal(commission);
+                    BigDecimal multiply = payMoney.multiply(bigDecimal).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    disburse = disburse.add(multiply);
                 }
             }
-            tGoodsVos.add(tGoodsVo);
-        }
+            indexInfo.setAccountsPayable(disburse);
+            indexInfo.setPlatformRevenue(indexInfo.getAccountsReceivable().subtract(indexInfo.getAccountsPayable()));
+            // 所有的信息
+            // 所有司机
+            Integer integer = driverMapper.selectCount(new EntityWrapper<TDriver>().eq("company_id", id).eq("remove",0));
+            indexInfo.setDriver(integer);
+            //车头
+            Integer integer1 = powerUnitsMapper.selectCount(new EntityWrapper<TPowerUnits>().eq("company_id", id).eq("type", 1));
+            indexInfo.setPowerUnits(integer1);
+            // 车架
+            indexInfo.setChassises(powerUnitsMapper.selectCount(new EntityWrapper<TPowerUnits>().eq("company_id", id).eq("type", 2)));
+            // 总订单
+            indexInfo.setOrdersTotal(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id)));
+            //
+            indexInfo.setInTransit(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).eq("status","7")));
+            indexInfo.setDispatching(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).eq("status","0")));
+            indexInfo.setCanceled(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).eq("status","16")));
+            indexInfo.setCompleted(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).eq("status","1")));
+            //获取当前公司的订单数量  根据当前月推算前12个月
+            ArrayList<IndexMonth> indexMonths = new ArrayList<>();
+            //获取当前月份
 
-        // 根据订单id 获取价格
-        List<TPrice> prices = priceMapper.selectList(new EntityWrapper<TPrice>().eq("order_id", tOrder.getId()));
-
-        ArrayList<TPriceVo> priceVos = new ArrayList<TPriceVo>();
-        for (TPrice price : prices) {
-            TPriceVo tPriceVo = new TPriceVo();
-            tPriceVo.setId(price.getId());
-            tPriceVo.setPrice(price.getCarPrice());
-            tPriceVo.setType(price.getType());
-            priceVos.add(tPriceVo);
-        }
-        info.setGoodsVos(tGoodsVos);
-        info.setPriceVos(priceVos);
-
-
-
-        return info;
-    }
-
-
-
-
-    @Override
-    public List<OrderListVo> getOrderList(Page<OrderListVo> orderListVoPage, OrderListDto dto) {
-        String sTime =null;
-        String eTime = null;
-        if(ToolUtil.isNotEmpty(dto.getDateRange())){
-            String[] split = dto.getDateRange().split(" - ");
-            sTime=split[0]+" 00:00:01";
-            eTime=split[1]+" 23:59:59";
-        }
-        Integer id = UserInfoUtil.getId();
-        List<OrderListVo> list = this.baseMapper.getOrderListOne(orderListVoPage,sTime,eTime,dto.getCustomerName(),dto.getId(),dto.getGroupId(),dto.getSaleId(),dto.getState(),id,dto.getType());
-            for (OrderListVo orderListVo : list) {
-            // TODO 对接第三方 看是否能提柜
-            if(Objects.nonNull(dto.getState())){
-                if(dto.getState()==1){
-
+            Calendar instance = Calendar.getInstance();
+            instance.setTime(new Date());
+            for (int i = 0; i <12; i++) {
+                if(i==0){
+                    IndexMonth indexMonth = new IndexMonth();
+                    int month = DateUtil.thisMonth();
+                    indexMonth.setMonth(month);
+                    indexMonth.setOrderNumber(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).between("pay_time",DateUtil.beginOfMonth(new Date()),DateUtil.endOfMonth(new Date()))));
+                    indexMonths.add(indexMonth);
                 }else {
-
+                    IndexMonth indexMonth = new IndexMonth();
+                    instance.add(Calendar.MONTH, -1);
+                    Date time1 = instance.getTime();
+                    int month = DateUtil.month(time1);
+                    indexMonth.setMonth(month);
+                    indexMonth.setOrderNumber(this.baseMapper.selectCount(new EntityWrapper<TOrder>().eq("company_id",id).between("pay_time",DateUtil.beginOfMonth(time1),DateUtil.endOfMonth(time1))));
+                    indexMonths.add(indexMonth);
                 }
             }
+            indexInfo.setList(indexMonths);
+            return indexInfo;
         }
-        return list;
-    }
 
-    @Override
-    public List<GoodsInfoVo> getGoodsInfo(Long orderId) {
-        TOrder tOrder = this.baseMapper.selectById(orderId);
-        ArrayList<GoodsInfoVo> goodsInfoVos = new ArrayList<>();
-        List<TGoods> goods = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", orderId));
-        for (TGoods g : goods) {
-            GoodsInfoVo goodsInfoVo = new GoodsInfoVo();
-            goodsInfoVo.setAwbNo(g.getBillNumber());
-            goodsInfoVo.setContainer(g.getContainerNumber());
-            goodsInfoVo.setHazmat(g.getDanger());
-            goodsInfoVo.setOverWeight(g.getWeight());
-            goodsInfoVo.setShippingLine(g.getShippingLine());
-            goodsInfoVo.setSize(g.getSize());
-            goodsInfoVo.setType(g.getType());
-            goodsInfoVo.setTypeClass(g.getTypeClass());
-            goodsInfoVo.setWeight(g.getKg());
-            goodsInfoVos.add(goodsInfoVo);
-        }
-        return goodsInfoVos;
-    }
 
-    @Override
-    public OrderInfo getOrderInfo(Long orderId) {
-        OrderInfo orderInfo = new OrderInfo();
-        ArrayList<LonLat> lonLats = new ArrayList<>();
 
-        TOrder tOrder = this.baseMapper.selectById(orderId);
-        orderInfo.setSlat(tOrder.getStartLat());
-        orderInfo.setSlon(tOrder.getStartLon());
-        LonLat lonLat = new LonLat();
-        lonLat.setLat(tOrder.getStartLat());
-        lonLat.setLng(tOrder.getStartLon());
-        lonLats.add(lonLat);
-        String s = tOrder.geteAddress();
-//        GeocodeVo geocode = googleMapUtil.getGeocode(s);
-//        orderInfo.setElat(String.valueOf(geocode.getLat()));
-//        orderInfo.setElon(String.valueOf(geocode.getLng()));
-        lonLat=new LonLat();
-        lonLat.setLng("-113.066919618184");
-        lonLat.setLat("37.684389618184");
-        lonLats.add(lonLat);
-        orderInfo.setElat("37.684389618184");
-        orderInfo.setElon("-113.066919618184");
 
-        orderInfo.setLonLats(lonLats);
-        Long quoteId = tQuoteMapper.selectList(new EntityWrapper<TQuote>().eq("order_id", tOrder.geteZipZ())).get(0).getId();
-        orderInfo.setType(tOrder.getType());
-        orderInfo.setQuoteId(quoteId);
-        // 获取用户
-        Integer userId = tOrder.getUserId();
-        TUser tUser = tUserMapper.selectById(userId);
-        orderInfo.setCustomer(tUser.getCompanyName());
-        // 获取组
-        Integer groupId = tUser.getGroupId();
-        if(groupId!=null) {
-            TGroup tGroup = tGroupMapper.selectById(groupId);
-            orderInfo.setSalesGroup(tGroup.getName());
-            Integer salesId = tGroup.getSalesId();
-            User user = userMapper.selectById(salesId);
-            orderInfo.setSales(user.getName());
-        }
-        // 获取码头id  获取码头地址  pickup信息
-        Integer portId = tOrder.getPort();
-        TPort tPort = portMapper.selectById(portId);
-        orderInfo.setAddress(tOrder.geteAddress());
-        orderInfo.setContactName(tOrder.getsName());
-        orderInfo.setContactPhone(tOrder.getsPhone());
-        orderInfo.setContactEmail(tOrder.getsEmail());
-        orderInfo.setShipmentDate(tOrder.getShipmentDate());
-        orderInfo.setResidentitalPickUp(tOrder.getAccessorialStr());
-
-        String warehouse = tOrder.getWarehouse();
-        // 是仓库
-        if(!"0".equals(warehouse)){
-            TWarehouse tWarehouse = wareHouseMapper.selectList(new EntityWrapper<TWarehouse>().eq("company_id", tOrder.getCompanyId()).eq("code", warehouse)).get(0);
-            orderInfo.setWareHouse(tWarehouse.getAddress());
-        }
-        // destination信息
-        orderInfo.setEndAddress(tOrder.geteAddress());
-        orderInfo.setECompanyName(tOrder.geteCompanyName());
-        orderInfo.setEContactName(tOrder.geteName());
-        orderInfo.setEContactPhone(tOrder.getePhone());
-        orderInfo.setEContactEmail(tOrder.geteEmail());
-        orderInfo.setDeliveryDate(tOrder.getDeliveryDate());
-        orderInfo.setDeliverStr(tOrder.getDeliveryStr());
-        orderInfo.setCarrierQuoteNumber(quoteId);
-
-        // 根据订单id获取货物
-        List<TGoods> goods = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", orderId));
-        ArrayList<String> strings = new ArrayList<>();
-        goods.forEach(e->{
-            strings.add(e.getContainerNumber());
-            orderInfo.setBl(e.getBillNumber());
-        });
-        orderInfo.setContainer(strings);
-        ArrayList<DriverNoteVo> driverNoteVos = new ArrayList<>();
-        ArrayList<DriverNoteVo> driverNoteVos1 = new ArrayList<>();
-
-        // 获取司机note  和 trouble
-        List<DriverNote> driverNotes = driverNoteMapper.selectList(new EntityWrapper<DriverNote>().eq("order_id", orderId));
-        for (DriverNote driverNote : driverNotes) {
-            DriverNoteVo driverNoteVo = new DriverNoteVo();
-            BeanUtil.copyProperties(driverNote,driverNoteVo);
-            TDriver tDriver = driverService.selectById(driverNoteVo.getDriverId());
-            driverNoteVo.setDriverName(tDriver.getDriverName());
-            if(driverNoteVo.getType()==1){
-                driverNoteVos.add(driverNoteVo);
-            }else {
-                driverNoteVos1.add(driverNoteVo);
+        @Override
+        public InvoicesVoTwo listOfReceivablesInfo(Long orderId) {
+            InvoicesVoTwo invoicesVoTwo = new InvoicesVoTwo();
+            TOrder tOrder = this.baseMapper.selectById(orderId);
+            invoicesVoTwo.setId(tOrder.getId());
+            invoicesVoTwo.setPickupDate(tOrder.getShipmentDate());
+            invoicesVoTwo.setDeliveryDate(tOrder.getDeliveryDate());
+            invoicesVoTwo.setInvoiceNumber(tOrder.getInvoiceNumber());
+            invoicesVoTwo.setRemark(tOrder.getRemark());
+            // 根据订单id 获取价格
+            List<TPrice> prices = priceMapper.selectList(new EntityWrapper<TPrice>().eq("order_id", tOrder.getId()));
+            ArrayList<TPriceVo> priceVos = new ArrayList<TPriceVo>();
+            for (TPrice price : prices) {
+                TPriceVo tPriceVo = new TPriceVo();
+                tPriceVo.setId(price.getId());
+                tPriceVo.setPrice(price.getCarPrice());
+                tPriceVo.setType(price.getType());
+                priceVos.add(tPriceVo);
             }
+            invoicesVoTwo.setPriceVos(priceVos);
+
+            return invoicesVoTwo;
         }
-        orderInfo.setNote(driverNoteVos);
-        orderInfo.setTrouble(driverNoteVos1);
-        orderInfo.setState(tOrder.getState());
-        return orderInfo;
+        @Override
+        public InvoicesVoOne listOfReceivablesInfoOne(Long orderId) {
+            InvoicesVoOne info = tUserMapper.getOrderInfoOne(orderId);
+            // 根据订单id 获取货物信息
+            Long id = info.getId();
+
+            TOrder tOrder = this.baseMapper.selectById(id);
+            List<TGoods> orders = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", id));
+            ArrayList<TGoodsVo> tGoodsVos = new ArrayList<>();
+            TCompany tCompany = tCompanyMapper.selectById(info.getCompanyId());
+            for (TGoods order : orders) {
+                TGoodsVo tGoodsVo = new TGoodsVo();
+                tGoodsVo.setName(tCompany.getName());
+                tGoodsVo.setSize(order.getSize());
+                tGoodsVo.setKg(order.getKg());
+                String size = order.getSize();
+                tGoodsVo.setSize(size);
+                tGoodsVos.add(tGoodsVo);
+            }
+
+            // 根据订单id 获取价格
+            List<TPrice> prices = priceMapper.selectList(new EntityWrapper<TPrice>().eq("order_id", tOrder.getId()));
+
+            ArrayList<TPriceVo> priceVos = new ArrayList<TPriceVo>();
+            for (TPrice price : prices) {
+                TPriceVo tPriceVo = new TPriceVo();
+                tPriceVo.setId(price.getId());
+                tPriceVo.setPrice(price.getCarPrice());
+                tPriceVo.setType(price.getType());
+                priceVos.add(tPriceVo);
+            }
+            info.setGoodsVos(tGoodsVos);
+            info.setPriceVos(priceVos);
 
 
-    }
 
-    @Override
-    public Boolean addOrderFile(Long orderId, String url, String name) {
-        return this.baseMapper.addOrderFile(orderId,url,name);
-    }
+            return info;
+        }
 
 
-    public static void main(String[] args) throws ParseException {
+
+
+        @Override
+        public List<OrderListVo> getOrderList(Page<OrderListVo> orderListVoPage, OrderListDto dto) {
+            String sTime =null;
+            String eTime = null;
+            if(ToolUtil.isNotEmpty(dto.getDateRange())){
+                String[] split = dto.getDateRange().split(" - ");
+                sTime=split[0]+" 00:00:01";
+                eTime=split[1]+" 23:59:59";
+            }
+            Integer id = dto.getCompanyId();
+            List<OrderListVo> list = this.baseMapper.getOrderListOne(orderListVoPage,sTime,eTime,dto.getCustomerName(),dto.getId(),dto.getGroupId(),dto.getSaleId(),dto.getState(),id,dto.getType());
+                for (OrderListVo orderListVo : list) {
+                // TODO 对接第三方 看是否能提柜
+                if(Objects.nonNull(dto.getState())){
+                    if(dto.getState()==1){
+
+                    }else {
+
+                    }
+                }
+            }
+            return list;
+        }
+
+        @Override
+        public List<GoodsInfoVo> getGoodsInfo(Long orderId) {
+            TOrder tOrder = this.baseMapper.selectById(orderId);
+            ArrayList<GoodsInfoVo> goodsInfoVos = new ArrayList<>();
+            List<TGoods> goods = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", orderId));
+            for (TGoods g : goods) {
+                GoodsInfoVo goodsInfoVo = new GoodsInfoVo();
+                goodsInfoVo.setAwbNo(g.getBillNumber());
+                goodsInfoVo.setContainer(g.getContainerNumber());
+                goodsInfoVo.setHazmat(g.getDanger());
+                goodsInfoVo.setOverWeight(g.getWeight());
+                goodsInfoVo.setShippingLine(g.getShippingLine());
+                goodsInfoVo.setSize(g.getSize());
+                goodsInfoVo.setType(g.getType());
+                goodsInfoVo.setTypeClass(g.getTypeClass());
+                goodsInfoVo.setWeight(g.getKg());
+                goodsInfoVos.add(goodsInfoVo);
+            }
+            return goodsInfoVos;
+        }
+
+        @Override
+        public OrderInfo getOrderInfo(Long orderId) {
+            OrderInfo orderInfo = new OrderInfo();
+            ArrayList<LonLat> lonLats = new ArrayList<>();
+
+            TOrder tOrder = this.baseMapper.selectById(orderId);
+            orderInfo.setSlat(tOrder.getStartLat());
+            orderInfo.setSlon(tOrder.getStartLon());
+            LonLat lonLat = new LonLat();
+            lonLat.setLat(tOrder.getStartLat());
+            lonLat.setLng(tOrder.getStartLon());
+            lonLats.add(lonLat);
+            String s = tOrder.geteAddress();
+    //        GeocodeVo geocode = googleMapUtil.getGeocode(s);
+    //        orderInfo.setElat(String.valueOf(geocode.getLat()));
+    //        orderInfo.setElon(String.valueOf(geocode.getLng()));
+            lonLat=new LonLat();
+            lonLat.setLng("-113.066919618184");
+            lonLat.setLat("37.684389618184");
+            lonLats.add(lonLat);
+            orderInfo.setElat("37.684389618184");
+            orderInfo.setElon("-113.066919618184");
+
+            orderInfo.setLonLats(lonLats);
+            Long quoteId = tQuoteMapper.selectList(new EntityWrapper<TQuote>().eq("order_id", tOrder.geteZipZ())).get(0).getId();
+            orderInfo.setType(tOrder.getType());
+            orderInfo.setQuoteId(quoteId);
+            // 获取用户
+            Integer userId = tOrder.getUserId();
+            TUser tUser = tUserMapper.selectById(userId);
+            orderInfo.setCustomer(tUser.getCompanyName());
+            // 获取组
+            Integer groupId = tUser.getGroupId();
+            if(groupId!=null) {
+                TGroup tGroup = tGroupMapper.selectById(groupId);
+                orderInfo.setSalesGroup(tGroup.getName());
+                Integer salesId = tGroup.getSalesId();
+                User user = userMapper.selectById(salesId);
+                orderInfo.setSales(user.getName());
+            }
+            // 获取码头id  获取码头地址  pickup信息
+            Integer portId = tOrder.getPort();
+            TPort tPort = portMapper.selectById(portId);
+            orderInfo.setAddress(tOrder.geteAddress());
+            orderInfo.setContactName(tOrder.getsName());
+            orderInfo.setContactPhone(tOrder.getsPhone());
+            orderInfo.setContactEmail(tOrder.getsEmail());
+            orderInfo.setShipmentDate(tOrder.getShipmentDate());
+            orderInfo.setResidentitalPickUp(tOrder.getAccessorialStr());
+
+            String warehouse = tOrder.getWarehouse();
+            // 是仓库
+            if(!"0".equals(warehouse)){
+                TWarehouse tWarehouse = wareHouseMapper.selectList(new EntityWrapper<TWarehouse>().eq("company_id", tOrder.getCompanyId()).eq("code", warehouse)).get(0);
+                orderInfo.setWareHouse(tWarehouse.getAddress());
+            }
+            // destination信息
+            orderInfo.setEndAddress(tOrder.geteAddress());
+            orderInfo.setECompanyName(tOrder.geteCompanyName());
+            orderInfo.setEContactName(tOrder.geteName());
+            orderInfo.setEContactPhone(tOrder.getePhone());
+            orderInfo.setEContactEmail(tOrder.geteEmail());
+            orderInfo.setDeliveryDate(tOrder.getDeliveryDate());
+            orderInfo.setDeliverStr(tOrder.getDeliveryStr());
+            orderInfo.setCarrierQuoteNumber(quoteId);
+
+            // 根据订单id获取货物
+            List<TGoods> goods = tGoodsMapper.selectList(new EntityWrapper<TGoods>().eq("order_id", orderId));
+            ArrayList<String> strings = new ArrayList<>();
+            goods.forEach(e->{
+                strings.add(e.getContainerNumber());
+                orderInfo.setBl(e.getBillNumber());
+            });
+            orderInfo.setContainer(strings);
+            ArrayList<DriverNoteVo> driverNoteVos = new ArrayList<>();
+            ArrayList<DriverNoteVo> driverNoteVos1 = new ArrayList<>();
+
+            // 获取司机note  和 trouble
+            List<DriverNote> driverNotes = driverNoteMapper.selectList(new EntityWrapper<DriverNote>().eq("order_id", orderId));
+            for (DriverNote driverNote : driverNotes) {
+                DriverNoteVo driverNoteVo = new DriverNoteVo();
+                BeanUtil.copyProperties(driverNote,driverNoteVo);
+                TDriver tDriver = driverService.selectById(driverNoteVo.getDriverId());
+                driverNoteVo.setDriverName(tDriver.getDriverName());
+                if(driverNoteVo.getType()==1){
+                    driverNoteVos.add(driverNoteVo);
+                }else {
+                    driverNoteVos1.add(driverNoteVo);
+                }
+            }
+            orderInfo.setNote(driverNoteVos);
+            orderInfo.setTrouble(driverNoteVos1);
+            orderInfo.setState(tOrder.getState());
+            return orderInfo;
+
+
+        }
+
+        @Override
+        public Boolean addOrderFile(Long orderId, String url, String name) {
+            return this.baseMapper.addOrderFile(orderId,url,name);
+        }
+
+
+        public static void main(String[] args) throws ParseException {
+
+
+
+        }
 
 
 
     }
-
-
-
-}

--
Gitblit v1.7.1