装备需求统计
This commit is contained in:
parent
cde70380a4
commit
2a15873c62
|
|
@ -1,6 +1,5 @@
|
|||
package com.bonus.material.largeScreen.controller;
|
||||
|
||||
import com.bonus.common.biz.domain.TypeInfo;
|
||||
import com.bonus.common.biz.utils.MathUtil;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.material.device.domain.DevInfo;
|
||||
|
|
@ -17,8 +16,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
|
||||
/**
|
||||
* @Author:liang.chao
|
||||
|
|
@ -60,11 +57,11 @@ public class LargeScreenController {
|
|||
Integer devCount = devInfoMapper.getTodayDevCount();
|
||||
OrderData orderData = new OrderData();
|
||||
//今日订单成交数、今日成交金额数
|
||||
OrderDto orderDto = orderMapper.getTodayOderCount();
|
||||
OrderDto orderDto = orderMapper.getTodayOrderCount();
|
||||
// 今日需求发布数
|
||||
Integer leaseNum = leaseInfoMapper.getTodayLeaseCount();
|
||||
//今日需求接单数
|
||||
Integer leaseOrderNum = leaseInfoMapper.getTodayLeaseOderCount();
|
||||
Integer leaseOrderNum = leaseInfoMapper.getTodayLeaseOrderCount();
|
||||
orderData.setTodayDevNum(devCount);
|
||||
orderData.setTodayOrderNum(orderDto.getOrderNum());
|
||||
orderData.setTodayCost(orderDto.getCost());
|
||||
|
|
@ -91,7 +88,7 @@ public class LargeScreenController {
|
|||
@ApiOperation("装备租赁统计")
|
||||
@GetMapping("/devLeaseCount")
|
||||
public AjaxResult devRentalCount() {
|
||||
OrderDto orderDto = orderMapper.getOderCount();
|
||||
OrderDto orderDto = orderMapper.getOrderCount();
|
||||
OrderData orderData = new OrderData();
|
||||
orderData.setOrderNum(orderDto.getOrderNum());
|
||||
Integer devLeasingNum = devInfoMapper.getDevLeasingNum();
|
||||
|
|
@ -101,6 +98,17 @@ public class LargeScreenController {
|
|||
return AjaxResult.success(orderData);
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("装备需求统计")
|
||||
@GetMapping("/demandCount")
|
||||
public AjaxResult demandCount() {
|
||||
OrderData orderData = new OrderData();
|
||||
Integer leaseNum = leaseInfoMapper.getLeaseCount();
|
||||
Integer leaseOrderNum = leaseInfoMapper.getLeaseOrderCount();
|
||||
String topPopularTypeName = leaseInfoMapper.getTopPopularTypeName();
|
||||
orderData.setLeaseNum(leaseNum);
|
||||
orderData.setLeaseOrderRatio(MathUtil.calculatePercentage(leaseOrderNum, leaseNum));
|
||||
orderData.setTopPopularTypeName(topPopularTypeName);
|
||||
return AjaxResult.success(orderData);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,4 +55,16 @@ public class OrderData {
|
|||
|
||||
@ApiModelProperty(value = "装备利用率")
|
||||
private BigDecimal devUsageRatio;
|
||||
|
||||
@ApiModelProperty(value = "总需求数")
|
||||
private Integer leaseNum;
|
||||
|
||||
@ApiModelProperty(value = "总接单数")
|
||||
private Integer leaseOrderNum;
|
||||
|
||||
@ApiModelProperty(value = "接单率")
|
||||
private BigDecimal leaseOrderRatio;
|
||||
|
||||
@ApiModelProperty(value = "最需装备")
|
||||
private String topPopularTypeName;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.bonus.material.lease.mapper;
|
||||
|
||||
import com.bonus.material.largeScreen.entity.OrderData;
|
||||
import com.bonus.material.lease.domain.MaLease;
|
||||
import com.bonus.material.lease.domain.MaLeaseDetails;
|
||||
import com.bonus.material.lease.domain.MaLeaseDto;
|
||||
|
|
@ -117,7 +116,13 @@ public interface MaLeaseInfoMapper {
|
|||
|
||||
Integer getTodayLeaseCount();
|
||||
|
||||
Integer getTodayLeaseOderCount();
|
||||
Integer getLeaseCount();
|
||||
|
||||
Integer getLeaseOrderCount();
|
||||
|
||||
String getTopPopularTypeName();
|
||||
|
||||
Integer getTodayLeaseOrderCount();
|
||||
|
||||
MaLeaseInfo getDevInfoById(Integer id);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package com.bonus.material.lease.service.impl;
|
||||
|
||||
import com.bonus.common.biz.constant.MaterialConstants;
|
||||
import com.bonus.common.biz.domain.BmFileInfo;
|
||||
import com.bonus.common.biz.enums.HttpCodeEnum;
|
||||
import com.bonus.common.biz.enums.OrderStatusEnum;
|
||||
|
|
@ -104,7 +103,7 @@ public class LeaseRepairRecordServiceImpl implements LeaseRepairRecordService {
|
|||
leaseRecordDto.setMaNumber(orderInfoDto.getMaNumber());
|
||||
leaseRecordDto.setLeaseCompany(orderInfoDto.getCzcompanyName());
|
||||
}
|
||||
List<OrderDetailDto> orderDetailList = orderMapper.selectOrderDetailsByOderId(dto.getOrderId());
|
||||
List<OrderDetailDto> orderDetailList = orderMapper.selectOrderDetailsByOrderId(dto.getOrderId());
|
||||
if (CollectionUtils.isNotEmpty(orderDetailList)) {
|
||||
for (OrderDetailDto detailDto : orderDetailList) {
|
||||
detailDto.setDays(detailDto.getDateDays() == null ? detailDto.getDays() : String.valueOf(detailDto.getDateDays()));
|
||||
|
|
|
|||
|
|
@ -1,50 +1,32 @@
|
|||
package com.bonus.material.order.controller;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.text.StrBuilder;
|
||||
import com.bonus.common.biz.enums.MaStatusEnum;
|
||||
import com.bonus.common.biz.enums.OrderStatusEnum;
|
||||
import com.bonus.common.core.utils.DateUtils;
|
||||
import com.bonus.common.core.web.controller.BaseController;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.common.core.web.page.TableDataInfo;
|
||||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import com.bonus.material.book.domain.BookCarInfoDto;
|
||||
import com.bonus.material.contract.domain.BmContract;
|
||||
import com.bonus.material.contract.service.BmContractService;
|
||||
import com.bonus.material.device.domain.vo.DevInfoVo;
|
||||
import com.bonus.material.lease.domain.LeaseRepairRecord;
|
||||
import com.bonus.material.lease.mapper.LeaseRepairRecordMapper;
|
||||
import com.bonus.material.order.domain.OrderDetailDto;
|
||||
import com.bonus.material.order.domain.OrderInfoDto;
|
||||
import com.bonus.material.order.mapper.OrderMapper;
|
||||
import com.bonus.material.order.service.OrderService;
|
||||
import com.bonus.system.api.RemoteFileService;
|
||||
import com.bonus.system.api.domain.SysFile;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.commons.lang3.text.StrSubstitutor;
|
||||
import org.apache.poi.xwpf.usermodel.*;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.mock.web.MockMultipartFile;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.imageio.ImageIO;
|
||||
import java.awt.*;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
|
@ -170,7 +152,7 @@ public class OrderController extends BaseController {
|
|||
@GetMapping("/leaseAgreement")
|
||||
public AjaxResult leaseAgreement(String orderId, Map<String, String> replacements) throws IOException, ParseException {
|
||||
OrderInfoDto orderInfoDto = orderService.getAgreementByOrderId(orderId);
|
||||
List<OrderDetailDto> orderDetailsByOrderId = orderMapper.selectOrderDetailsByOderId(orderId);
|
||||
List<OrderDetailDto> orderDetailsByOrderId = orderMapper.selectOrderDetailsByOrderId(orderId);
|
||||
BmContract bmContract = new BmContract();
|
||||
bmContract.setStatus(1);
|
||||
bmContract.setOwnerCom(orderInfoDto.getCompanyId().longValue());
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public interface OrderMapper {
|
|||
Integer updateDevCount(OrderDetailDto orderDetailDto);
|
||||
Integer updateAddDevCount(OrderDetailDto orderDetailDto);
|
||||
|
||||
List<OrderDetailDto> selectOrderDetailsByOderId(String orderId);
|
||||
List<OrderDetailDto> selectOrderDetailsByOrderId(String orderId);
|
||||
|
||||
List<OrderDetailDto> getOrderDetailsByOrderId(Integer orderId);
|
||||
|
||||
|
|
@ -61,7 +61,7 @@ public interface OrderMapper {
|
|||
|
||||
OrderData getCompanysCost();
|
||||
|
||||
OrderDto getTodayOderCount();
|
||||
OrderDto getTodayOrderCount();
|
||||
|
||||
OrderDto getOderCount();
|
||||
OrderDto getOrderCount();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ import com.bonus.common.core.utils.DateUtils;
|
|||
import com.bonus.common.core.utils.encryption.Sm4Utils;
|
||||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import com.bonus.material.comprehensive.entity.RentDetailDto;
|
||||
import com.bonus.material.device.domain.DevInfo;
|
||||
import com.bonus.material.device.domain.vo.DevInfoVo;
|
||||
import com.bonus.material.device.mapper.DevInfoMapper;
|
||||
import com.bonus.material.largeScreen.entity.OrderData;
|
||||
|
|
@ -203,7 +202,7 @@ public class OrderServiceImpl implements OrderService {
|
|||
@Override
|
||||
public OrderInfoDto getOrderDetailsById(OrderDetailDto dto) throws Exception {
|
||||
OrderInfoDto orderInfoDto = orderMapper.getOrderDetailsById(dto);
|
||||
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOderId(dto.getOrderId().toString());
|
||||
List<OrderDetailDto> list = orderMapper.selectOrderDetailsByOrderId(dto.getOrderId().toString());
|
||||
Optional<OrderDetailDto> minOrderStatus = list.stream()
|
||||
.min((p1, p2) -> Integer.compare(Integer.parseInt(p1.getOrderStatus()), Integer.parseInt(p2.getOrderStatus())));
|
||||
if (minOrderStatus.isPresent()) {
|
||||
|
|
|
|||
|
|
@ -413,15 +413,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
WHERE
|
||||
DATE_FORMAT( create_time, '%Y-%m-%d' ) = DATE_FORMAT(NOW(),'%Y-%m-%d')
|
||||
</select>
|
||||
<select id="getTodayLeaseOderCount" resultType="java.lang.Integer">
|
||||
|
||||
<select id="getTodayLeaseOrderCount" resultType="java.lang.Integer">
|
||||
SELECT
|
||||
COUNT(1) as leaseOrderNum
|
||||
FROM
|
||||
ma_lease_info
|
||||
WHERE
|
||||
DATE_FORMAT( order_time, '%Y-%m-%d' ) = DATE_FORMAT(NOW(),'%Y-%m-%d')
|
||||
and lease_status in (1,3)
|
||||
and lease_status in (1,3)
|
||||
</select>
|
||||
|
||||
<select id="getLeaseCount" resultType="java.lang.Integer">
|
||||
SELECT
|
||||
COUNT(1) as leaseNum
|
||||
FROM
|
||||
ma_lease_info
|
||||
</select>
|
||||
|
||||
<select id="getLeaseOrderCount" resultType="java.lang.Integer">
|
||||
SELECT
|
||||
COUNT(1) as leaseOrderNum
|
||||
FROM
|
||||
ma_lease_info
|
||||
WHERE
|
||||
lease_status in (1,3)
|
||||
</select>
|
||||
|
||||
<select id="getTopPopularTypeName" resultType="java.lang.String">
|
||||
select mt.type_name from (
|
||||
SELECT type_id
|
||||
FROM ma_lease_details
|
||||
group by type_id
|
||||
order by count(type_id) desc limit 1
|
||||
) a
|
||||
left join ma_type mt on mt.type_id = a.type_id
|
||||
</select>
|
||||
|
||||
<select id="getDevInfoById" resultType="com.bonus.material.lease.domain.MaLeaseInfo">
|
||||
SELECT
|
||||
mli.*,
|
||||
|
|
|
|||
|
|
@ -255,7 +255,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
WHERE
|
||||
mt.del_flag = '0' and moi.order_id = #{orderId} limit 1
|
||||
</select>
|
||||
<select id="selectOrderDetailsByOderId" resultType="com.bonus.material.order.domain.OrderDetailDto">
|
||||
<select id="selectOrderDetailsByOrderId" resultType="com.bonus.material.order.domain.OrderDetailDto">
|
||||
SELECT
|
||||
mdi.ma_id as maId,
|
||||
mdi.code as code,
|
||||
|
|
@ -421,7 +421,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
GROUP BY
|
||||
mdi.own_co
|
||||
</select>
|
||||
<select id="getTodayOderCount" resultType="com.bonus.material.largeScreen.entity.OrderDto">
|
||||
<select id="getTodayOrderCount" resultType="com.bonus.material.largeScreen.entity.OrderDto">
|
||||
SELECT
|
||||
count( moi.order_id ) orderNum,
|
||||
ifnull(SUM( moi.cost ), 0) cost
|
||||
|
|
@ -431,7 +431,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
DATE_FORMAT( moi.create_time, '%Y-%m-%d' ) = DATE_FORMAT(NOW(),'%Y-%m-%d')
|
||||
</select>
|
||||
|
||||
<select id="getOderCount" resultType="com.bonus.material.largeScreen.entity.OrderDto">
|
||||
<select id="getOrderCount" resultType="com.bonus.material.largeScreen.entity.OrderDto">
|
||||
SELECT
|
||||
count( moi.order_id ) orderNum,
|
||||
ifnull(SUM( moi.cost ), 0) cost
|
||||
|
|
|
|||
Loading…
Reference in New Issue