Просмотр исходного кода

修改对账管理sql查询问题

lengfaqiang 2 лет назад
Родитель
Сommit
430d3e6627

+ 0 - 9
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/dubbo/TransportDubboService.java

@@ -1,8 +1,6 @@
 package com.sckw.transport.api.dubbo;
 
-import com.sckw.core.web.response.HttpResult;
 import com.sckw.transport.api.model.dto.vo.KwtLogisticsOrderVO;
-import com.sckw.transport.api.model.param.LogisticsOrderParam;
 
 import java.util.List;
 
@@ -15,13 +13,6 @@ import java.util.List;
  * @date 2023-07-17 10:06:27
  */
 public interface TransportDubboService {
-    /**
-     * 查询物流订单数据
-     *
-     * @param logisticsOrderParam
-     * @return
-     */
-    HttpResult getLogisticsOrderData(LogisticsOrderParam logisticsOrderParam);
 
     /**
      * 根据id 获取详情

+ 1 - 6
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/dto/vo/LogisticsOrderDTO.java

@@ -36,7 +36,7 @@ public class LogisticsOrderDTO {
     /**
      * 运输趟次
      */
-    private Integer count;
+    private Long count;
     /**
      * 计费方式
      */
@@ -82,9 +82,4 @@ public class LogisticsOrderDTO {
     private BigDecimal unloadAmount;
     private BigDecimal loadAmount;
 
-    /**
-     * 销售单价
-     */
-    private BigDecimal salesPrice;
-
 }

+ 1 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/consumer/SckwBusSumConsumer.java

@@ -60,6 +60,7 @@ public class SckwBusSumConsumer {
      * @date 2023/7/8
      **/
     public void addMongodb(SckwBusSum busSum) {
+        log.info("busSum:{}", JSONObject.toJSONString(busSum));
         /**初级校验**/
         if (busSum.getObject() == null || StringUtils.isBlank(busSum.getBusSumType()) || busSum.getMethod() == 0) {
             return;

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/TransportCommonController.java

@@ -3,9 +3,9 @@ package com.sckw.transport.controller;
 import com.alibaba.fastjson.JSONObject;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.model.dto.DocumentParamDTO;
 import com.sckw.transport.model.dto.OrderDTO;
+import com.sckw.transport.model.param.LogisticsOrderParam;
 import com.sckw.transport.service.TransportCommonService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;

+ 8 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dao/KwtLogisticsOrderMapper.java

@@ -2,8 +2,8 @@ package com.sckw.transport.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.sckw.transport.api.model.dto.vo.LogisticsOrderDTO;
-import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.model.KwtLogisticsOrder;
+import com.sckw.transport.model.param.LogisticsOrderParam;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -53,4 +53,11 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
      * @return
      */
     Long selectOrderCount(@Param("id") String id);
+
+    /**
+     * @param logisticsOrderParam
+     * @param dictId
+     * @return
+     */
+    Long selectLogisticOrderCount(@Param("logisticsOrderParam") LogisticsOrderParam logisticsOrderParam, @Param("dictId") Long dictId);
 }

+ 1 - 1
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/param/LogisticsOrderParam.java → sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/param/LogisticsOrderParam.java

@@ -1,4 +1,4 @@
-package com.sckw.transport.api.model.param;
+package com.sckw.transport.model.param;
 
 import jakarta.validation.constraints.NotNull;
 import lombok.Data;

+ 0 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/AcceptCarriageOrderService.java

@@ -216,7 +216,6 @@ public class AcceptCarriageOrderService {
                 SckwBusSum busSum = new SckwBusSum();
                 //业务汇总类型
                 busSum.setBusSumType(BusinessTypeEnum.WAYBILL_ORDER_TYPE.getName());
-//            busSum.setBusSumType("waybillOrderCar");
                 //操作对象(1新增/2修改)
                 busSum.setMethod(1);
                 //业务汇总数据对象

+ 27 - 9
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/TransportCommonService.java

@@ -3,11 +3,9 @@ package com.sckw.transport.service;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
 import com.sckw.core.common.enums.NumberConstant;
-import com.sckw.core.model.page.PageHelperUtil;
 import com.sckw.core.model.page.PageResult;
+import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
@@ -16,12 +14,12 @@ import com.sckw.excel.utils.DateUtil;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.transport.api.model.dto.vo.LogisticsOrderDTO;
-import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.common.enums.LogisticsOrderEnum;
 import com.sckw.transport.dao.*;
 import com.sckw.transport.model.*;
 import com.sckw.transport.model.dto.DocumentParamDTO;
 import com.sckw.transport.model.dto.OrderDTO;
+import com.sckw.transport.model.param.LogisticsOrderParam;
 import com.sckw.transport.model.vo.OrderDetailVO;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
@@ -70,6 +68,9 @@ public class TransportCommonService {
     @Autowired
     public KwtLogisticsOrderUnitMapper logisticsOrderUnitMapper;
 
+    @Autowired
+    public KwtWaybillOrderMapper waybillOrderMapper;
+
     /**
      * 获取托运企业名称
      *
@@ -112,6 +113,7 @@ public class TransportCommonService {
 
     /**
      * 查看订单详情
+     *
      * @param dto
      * @return
      */
@@ -201,6 +203,7 @@ public class TransportCommonService {
 
     /**
      * 撤销托运
+     *
      * @param orderDto
      * @return
      */
@@ -252,7 +255,7 @@ public class TransportCommonService {
             logisticsOrderMapper.update(null, new LambdaUpdateWrapper<KwtLogisticsOrder>()
                     .eq(KwtLogisticsOrder::getId, order.getId())
                     .set(KwtLogisticsOrder::getDelFlag, NumberConstant.ONE)
-                    .set(KwtLogisticsOrder::getSubcontractAmount,add)
+                    .set(KwtLogisticsOrder::getSubcontractAmount, add)
                     .set(KwtLogisticsOrder::getUpdateBy, LoginUserHolder.getUserId())
                     .set(KwtLogisticsOrder::getUpdateTime, new Date()));
 
@@ -269,14 +272,29 @@ public class TransportCommonService {
         SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(logisticsOrderParam.getPaymentType(), logisticsOrderParam.getPayment());
         Long dictId = sysDictResDto.getId();
         if (StringUtils.isNotBlank(logisticsOrderParam.getStartTime())) {
-            logisticsOrderParam.setStartTime(logisticsOrderParam.getEndTime() + " 00:00:00");
+            logisticsOrderParam.setStartTime(logisticsOrderParam.getStartTime() + " 00:00:00");
         }
         if (StringUtils.isNotBlank(logisticsOrderParam.getEndTime())) {
             logisticsOrderParam.setEndTime(logisticsOrderParam.getEndTime() + " 23:59:59");
         }
+        Integer page = logisticsOrderParam.getPage();
+        logisticsOrderParam.setPage(logisticsOrderParam.getPage()-1);
         List<LogisticsOrderDTO> list = logisticsOrderMapper.selectLogisticOrderData(logisticsOrderParam, dictId);
-        PageHelper.startPage(logisticsOrderParam.getPage(),logisticsOrderParam.getPageSize());
-        PageResult pageResult = PageHelperUtil.getPageResult(new PageInfo<>(list));
-        return HttpResult.ok(pageResult);
+        Long count = logisticsOrderMapper.selectLogisticOrderCount(logisticsOrderParam, dictId);
+        if (CollectionUtils.isNotEmpty(list)) {
+            for (LogisticsOrderDTO logisticsOrderDTO : list) {
+                KwtLogisticsOrderUnit orderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.ONE));
+                KwtLogisticsOrderUnit orderUnit1 = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.TWO));
+                logisticsOrderDTO.setCarrierCompany(orderUnit1 == null ? null : orderUnit1.getFirmName());
+                logisticsOrderDTO.setConsignCompany(orderUnit == null ? null : orderUnit.getFirmName());
+                logisticsOrderDTO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderDTO.getLOrderId())));
+            }
+        }
+        PageResult build = PageResult.build(page, logisticsOrderParam.getPageSize(), count, list);
+        return HttpResult.ok(build);
     }
 }

+ 0 - 32
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/dubbo/TransportDubboServiceImpl.java

@@ -1,19 +1,10 @@
 package com.sckw.transport.service.dubbo;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import com.sckw.core.model.page.PageHelperUtil;
-import com.sckw.core.model.page.PageResult;
 import com.sckw.core.utils.CollectionUtils;
-import com.sckw.core.utils.StringUtils;
-import com.sckw.core.web.response.HttpResult;
 import com.sckw.system.api.RemoteSystemService;
-import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.transport.api.dubbo.TransportDubboService;
 import com.sckw.transport.api.model.dto.vo.KwtLogisticsOrderVO;
-import com.sckw.transport.api.model.dto.vo.LogisticsOrderDTO;
-import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.dao.KwtLogisticsOrderGoodsMapper;
 import com.sckw.transport.dao.KwtLogisticsOrderMapper;
 import com.sckw.transport.dao.KwtLogisticsOrderUnitMapper;
@@ -48,29 +39,6 @@ public class TransportDubboServiceImpl implements TransportDubboService {
     @Autowired
     private KwtLogisticsOrderGoodsMapper logisticsOrderGoodsMapper;
 
-
-    /**
-     * 获取承运订单数据
-     *
-     * @param logisticsOrderParam
-     * @return
-     */
-    @Override
-    public HttpResult getLogisticsOrderData(LogisticsOrderParam logisticsOrderParam) {
-        SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(logisticsOrderParam.getPaymentType(), logisticsOrderParam.getPayment());
-        Long dictId = sysDictResDto.getId();
-        if (StringUtils.isNotBlank(logisticsOrderParam.getStartTime())) {
-            logisticsOrderParam.setStartTime(logisticsOrderParam.getEndTime() + " 00:00:00");
-        }
-        if (StringUtils.isNotBlank(logisticsOrderParam.getEndTime())) {
-            logisticsOrderParam.setEndTime(logisticsOrderParam.getEndTime() + " 23:59:59");
-        }
-        List<LogisticsOrderDTO> list = logisticsOrderMapper.selectLogisticOrderData(logisticsOrderParam, dictId);
-        PageHelper.startPage(logisticsOrderParam.getPage(), logisticsOrderParam.getPageSize());
-        PageResult pageResult = PageHelperUtil.getPageResult(new PageInfo<>(list));
-        return HttpResult.ok(pageResult);
-    }
-
     /**
      * 对账管理-ids查询
      *

+ 41 - 3
sckw-modules/sckw-transport/src/main/resources/mapper/KwtLogisticsOrderMapper.xml

@@ -129,11 +129,16 @@
         a.goods_price as goodsPrice,
         a.loss ,
         a.load_amount as loadAmount,
-        a.unload_amount as unloadAmount
+        a.unload_amount as unloadAmount,
+        a.start_time as startTime,
+        a.ent_time AS entTime,
+        a.create_time AS  createTime,
+        a.create_by AS createBy,
+        a.update_by AS updateBy,
+        a.update_time AS updateTime
         FROM
         kwt_logistics_order a
         LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
-        LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
         LEFT JOIN kwt_logistics_order_contract c ON a.id=c.l_order_id
         <where>
             a.del_flag = 0
@@ -156,6 +161,39 @@
                 AND a.ent_time &lt;= #{logisticsOrderParam.endTime}
             </if>
         </where>
-        limit #{logisticsOrderParam.page,jdbcType=INTEGER},#{logisticsOrderParam.pageSize,jdbcType=INTEGER}
+        ORDER BY a.create_time DESC
+        <if test="logisticsOrderParam.page != null and logisticsOrderParam.pageSize != null ">
+            limit #{logisticsOrderParam.page,jdbcType=INTEGER},#{logisticsOrderParam.pageSize,jdbcType=INTEGER}
+        </if>
+    </select>
+    <select id="selectLogisticOrderCount" resultType="java.lang.Long">
+        SELECT
+        count(a.id)
+        FROM
+        kwt_logistics_order a
+        LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
+        LEFT JOIN kwt_logistics_order_contract c ON a.id=c.l_order_id
+        <where>
+            a.del_flag = 0
+            <if test="dictId != null and dictId != ''">
+                AND a.payment = #{dictId}
+            </if>
+            <if test="logisticsOrderParam.companyId !=null and logisticsOrderParam.companyId != ''">
+                AND d.ent_id = #{logisticsOrderParam.companyId}
+            </if>
+            <if test="logisticsOrderParam.taxRate != null and logisticsOrderParam.taxRate != ''">
+                AND a.tax_rate = #{logisticsOrderParam.taxRate}
+            </if>
+            <if test="logisticsOrderParam.goodsName != null and logisticsOrderParam.goodsName != ''">
+                AND b.goods_name LIKE concat('%',#{logisticsOrderParam.goodsName},'%')
+            </if>
+            <if test="logisticsOrderParam.startTime != null and logisticsOrderParam.startTime !=''">
+                AND a.start_time &gt;= #{logisticsOrderParam.startTime}
+            </if>
+            <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime !=''">
+                AND a.ent_time &lt;= #{logisticsOrderParam.endTime}
+            </if>
+        </where>
+        ORDER BY a.create_time DESC
     </select>
 </mapper>