提交 4f402100 authored 作者: 李瑞鑫's avatar 李瑞鑫

Merge branch 'v17.6_delete_class_20240618' into release

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;
}
......@@ -87,6 +87,12 @@
<artifactId>coding-api</artifactId>
</dependency>
<dependency>
<groupId>com.msl</groupId>
<artifactId>server-spring-boot-starter</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.msl</groupId>-->
<!-- <artifactId>cache-spring-boot-starter</artifactId>-->
......
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));
}
}
package com.clx.performance.controller.system;
import com.alibaba.cloud.nacos.NacosDiscoveryProperties;
import com.alibaba.cloud.nacos.registry.NacosRegistration;
import com.alibaba.cloud.nacos.registry.NacosServiceRegistry;
import com.msl.common.result.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 应用服务器控制
*
* @author wanglq
* Date 2022/11/28
* Time 15:43
*/
@RestController
@RequestMapping("/appServer")
@Slf4j
public class AppServerController {
@Autowired
private NacosRegistration registration;
@Autowired
private NacosServiceRegistry registry;
/**
* 下线服务
*
* @return
*/
@GetMapping("/deregister")
public Result<Void> deregister() {
NacosDiscoveryProperties properties = registration.getNacosDiscoveryProperties();
String service = properties.getService();
String group = properties.getGroup();
String clusterName = properties.getClusterName();
String ip = properties.getIp();
int port = properties.getPort();
log.info("deregister from nacos, serviceName:{}, groupName:{}, clusterName:{}, ip:{}, port:{}", service, group, clusterName, ip, port);
registry.deregister(registration);
return Result.ok();
}
/**
* 应用状态
*
* @return
*/
@GetMapping("/status")
public Result<String> status() {
return Result.ok("up");
}
}
......@@ -8,6 +8,7 @@ import com.clx.performance.param.app.PageOrderChildOfDriverParam;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam;
import com.clx.performance.param.pc.*;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
......@@ -175,4 +176,6 @@ public interface OrderChildDao extends BaseDao<OrderChildMapper, OrderChild, Int
String beginTime);
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;
import com.clx.performance.param.app.PageOrderChildOfDriverSearchParam;
import com.clx.performance.param.app.owner.PageOwnerOrderChildListParam;
import com.clx.performance.param.pc.*;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
......@@ -560,4 +561,9 @@ public class OrderChildDaoImpl extends BaseDaoImpl<OrderChildMapper, OrderChild,
public List<OrderChild> listByChildNoList(List<String> 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;
import com.clx.performance.param.pc.PageCarrierOrderChildParam;
import com.clx.performance.param.pc.PagePoundAuditParam;
import com.clx.performance.sqlProvider.OrderChildSqlProvider;
import com.clx.performance.vo.MonthInComeAndOrderedVO;
import com.clx.performance.vo.app.OrderChildVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import org.apache.ibatis.annotations.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
......@@ -114,4 +116,8 @@ public interface OrderChildMapper extends BaseMapper<OrderChild> {
Integer unloadTimeAvg(Integer sendAddressId, Integer receiveAddressId,
Integer sendSystemAddressId, Integer receiveSystemAddressId,
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;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
......@@ -220,4 +221,10 @@ public class OrderChildSqlProvider {
}}.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 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论