提交 6df05600 authored 作者: 刘海泉's avatar 刘海泉

Merge remote-tracking branch 'origin/v1.0_init_fleet_20240427' into test

# Conflicts: # performance-web/src/main/java/com/clx/performance/dao/OrderChildDao.java # performance-web/src/main/java/com/clx/performance/dao/impl/OrderChildDaoImpl.java # performance-web/src/main/java/com/clx/performance/mapper/OrderChildMapper.java
package com.clx.performance.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
/** 月收入和接单量返回实体
*/
@Getter
@Setter
public class MonthInComeAndOrderedVO {
@ApiModelProperty("月收入")
private BigDecimal monthIncome;
@ApiModelProperty("月单量")
private Integer monthOrderNumber;
}
package com.clx.performance.controller.pc;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.enums.OrderChildEnum;
import com.clx.performance.param.pc.OrderChildCarrierCancelParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PageMonitorOrderChildQCParam;
import com.clx.performance.service.ExternalInterfaceService;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.pc.*;
import com.msl.common.base.PageData;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
@Slf4j
@RestController
@RequestMapping(value="/external/interface")
@Validated
@Api(tags = "对外提供该服务数据的接口")
@AllArgsConstructor
public class ExternalInterfaceController {
private final ExternalInterfaceService externalInterfaceService;
@ApiOperation(value = "获取车辆的月收入和月单量",notes = "<br>By:刘海泉")
@GetMapping("/getTruckMonthIncomeAndOrderedNum")
public Result<MonthInComeAndOrderedVO> getTruckMonthIncomeAndOrderedNum(@NotBlank(message = "车牌号不能为空") String truckNo) {
return Result.ok(externalInterfaceService.getTruckMonthIncomeAndOrderedNum(truckNo));
}
}
...@@ -8,6 +8,7 @@ import com.clx.performance.param.app.PageOrderChildOfDriverParam; ...@@ -8,6 +8,7 @@ import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam; import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam; import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam;
import com.clx.performance.param.pc.*; import com.clx.performance.param.pc.*;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO; import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO; import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
...@@ -175,4 +176,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int ...@@ -175,4 +176,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
String beginTime); String beginTime);
List<OrderChild> listByChildNoList(List<String> childNoList); List<OrderChild> listByChildNoList(List<String> childNoList);
MonthInComeAndOrderedVO statisticsTruckMonth(LocalDateTime startTime, LocalDateTime endTime, String truckNo);
} }
...@@ -13,6 +13,7 @@ import com.clx.performance.param.app.PageOrderChildOfDriverParam; ...@@ -13,6 +13,7 @@ import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam; import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam; import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam;
import com.clx.performance.param.pc.*; import com.clx.performance.param.pc.*;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO; import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO; import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
...@@ -561,4 +562,9 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild, ...@@ -561,4 +562,9 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public List<OrderChild> listByChildNoList(List<String> childNoList) { public List<OrderChild> listByChildNoList(List<String> childNoList) {
return list(lQrWrapper().in(OrderChild :: getChildNo,childNoList)); return list(lQrWrapper().in(OrderChild :: getChildNo,childNoList));
} }
@Override
public MonthInComeAndOrderedVO statisticsTruckMonth(LocalDateTime startTime, LocalDateTime endTime, String truckNo) {
return baseMapper.statisticsTruckMonth(startTime,endTime,truckNo);
}
} }
...@@ -11,12 +11,14 @@ import com.clx.performance.param.pc.OrderChildReportParam; ...@@ -11,12 +11,14 @@ import com.clx.performance.param.pc.OrderChildReportParam;
import com.clx.performance.param.pc.PageCarrierOrderChildParam; import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PagePoundAuditParam; import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.sqlProvider.OrderChildSqlProvider; import com.clx.performance.sqlProvider.OrderChildSqlProvider;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO; import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO; import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import org.apache.ibatis.annotations.*; import org.apache.ibatis.annotations.*;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
...@@ -114,4 +116,8 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> { ...@@ -114,4 +116,8 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
Integer unloadTimeAvg(Integer sendAddressId, Integer receiveAddressId, Integer unloadTimeAvg(Integer sendAddressId, Integer receiveAddressId,
Integer sendSystemAddressId, Integer receiveSystemAddressId, Integer sendSystemAddressId, Integer receiveSystemAddressId,
String beginTime); String beginTime);
@SelectProvider(type = OrderChildSqlProvider.class, method = "statisticsTruckMonth")
MonthInComeAndOrderedVO statisticsTruckMonth(@Param("startTime")LocalDateTime startTime, @Param("endTime")LocalDateTime endTime, @Param("truckNo")String truckNo);
} }
\ No newline at end of file
package com.clx.performance.service;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
public interface ExternalInterfaceService {
MonthInComeAndOrderedVO getTruckMonthIncomeAndOrderedNum(String truckNo);
}
package com.clx.performance.service.impl;
import com.clx.performance.dao.OrderChildDao;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
/**
* 车队运营系统相关逻辑接口
*/
@Slf4j
@Service
@AllArgsConstructor
public class ExternalInterfaceService implements com.clx.performance.service.ExternalInterfaceService {
private final OrderChildDao orderChildDao;
//查询车辆近一个月的收入和订单书库来那个
public MonthInComeAndOrderedVO getTruckMonthIncomeAndOrderedNum(String truckNo){
LocalDateTime endTime = LocalDateTime.now();
LocalDateTime startTime = endTime.minusMonths(1);
return orderChildDao.statisticsTruckMonth(startTime,endTime,truckNo);
}
}
...@@ -15,6 +15,7 @@ import org.apache.commons.lang3.StringUtils; ...@@ -15,6 +15,7 @@ import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL; import org.apache.ibatis.jdbc.SQL;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
...@@ -220,4 +221,10 @@ public class OrderChildSqlProvider { ...@@ -220,4 +221,10 @@ public class OrderChildSqlProvider {
}}.toString(); }}.toString();
} }
public String statisticsTruckMonth(@Param("startTime") LocalDateTime startTime, @Param("endTime")LocalDateTime endTime, @Param("truckNo")String truckNo) {
return "select a.monthOrderNumber,if(a.total,a.total,0) monthIncome from (" +
" SELECT count(*) AS monthOrderNumber,sum(freight) total FROM order_child WHERE truck_no = #{truckNo} and AND finish_time >= #{startTime} AND finish_time <= #{endTime}" +
") a";
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论