This commit is contained in:
sxu 2023-12-03 13:21:34 +08:00
commit c8a9871a8b
18 changed files with 147 additions and 95 deletions

View File

@ -1,5 +1,7 @@
package com.bonus.zlpt.bigscreen.controller;
import com.bonus.zlpt.bigscreen.domain.vo.ColtdVo;
import com.bonus.zlpt.bigscreen.domain.vo.LonVo;
import com.bonus.zlpt.common.core.web.controller.BaseController;
import com.bonus.zlpt.common.core.web.domain.AjaxResult;
import com.bonus.zlpt.bigscreen.domain.vo.CoTypeVo;
@ -8,7 +10,10 @@ import com.bonus.zlpt.bigscreen.service.BmCompanyInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 企业信息表(BmCompanyInfo)表控制层
@ -26,36 +31,57 @@ public class BmCompanyInfoController extends BaseController {
private BmCompanyInfoService bmCompanyInfoService;
/**
* 查询平台入驻单位
* @return
*/
@GetMapping("/list")
public AjaxResult List()
{
return toAjax(bmCompanyInfoService.selectList());
}
/**
* 根据企业类型查询对应数量
* 根据企业类型查询对应数量以及总数量
*
* @param
* @return
*/
@GetMapping("/type-list")
public AjaxResult typeList()
{
public AjaxResult typeList() {
List<CoTypeVo> list = bmCompanyInfoService.selectTypeList();
return success(list);
HashMap<String, Object> map = new HashMap<>(3);
int totalCount = 0;
for (CoTypeVo coTypeVo : list) {
totalCount += coTypeVo.getCount();
}
map.put("total", totalCount);
for (CoTypeVo coTypeVo : list) {
if (coTypeVo.getCoType().equals("社会企业")) {
map.put("social", coTypeVo);
} else if (coTypeVo.getCoType().equals("南网集团企业")) {
map.put("grid", coTypeVo);
} else {
map.put("corporation", coTypeVo);
}
}
return success(map);
}
/**
* 根据企业类型所属查询设备类型数量及经纬度
*
* @return
*/
@GetMapping("/coltd-list")
public AjaxResult coltdList()
{
public AjaxResult coltdList() {
List<ColtdTypeVo> list = bmCompanyInfoService.selectColtdList();
return success(list);
Map<String, Map<String, ColtdVo>> map = new HashMap<>();
for (ColtdTypeVo coltdTypeVo : list) {
String companyType = coltdTypeVo.getCompanyType();
map.put(companyType, map.getOrDefault(companyType, new HashMap<>()));
map.get(companyType).putIfAbsent("自有", new ColtdVo());
map.get(companyType).putIfAbsent("在租", new ColtdVo());
map.get(companyType).putIfAbsent("待租", new ColtdVo());
ColtdVo coltdVo = map.get(companyType).get(coltdTypeVo.getMaStatus());
coltdVo.setCount(coltdVo.getCount() + 1);
coltdVo.getList().add(new LonVo(coltdTypeVo.getMaId(), coltdTypeVo.getLon(), coltdTypeVo.getLat()));
}
return success(map);
}
}

View File

@ -7,7 +7,9 @@ import com.bonus.zlpt.bigscreen.service.BmMachinistInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 机手信息表(BmMachinistInfo)表控制层
@ -25,29 +27,22 @@ public class BmMachinistInfoController extends BaseController {
private BmMachinistInfoService bmMachinistInfoService;
/**
* 获取企业所属对应的机手数量
* 获取企业所属对应的机手数量以及机手总人数
* @return
*/
@GetMapping("/list")
public AjaxResult list()
{
List<CompanyInfoVo> machinistInfos = bmMachinistInfoService.selectMachinistInfoList();
return success(machinistInfos);
}
/**
* 获取企业所属对应的机手总人数
* @return
*/
@GetMapping("/total-list")
public AjaxResult totalList()
{
List<CompanyInfoVo> machinistInfos = bmMachinistInfoService.selectMachinistInfoList();
int totalCount = 0;
for (CompanyInfoVo companyInfo : machinistInfos) {
totalCount += companyInfo.getCount();
}
return toAjax(totalCount);
}
Map<String, Object> map = new HashMap<>(2);
map.put("total", totalCount);
map.put("type", machinistInfos);
return success(map);
}
}

View File

@ -11,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
/**
@ -35,7 +36,7 @@ public class MaDevInfoController extends BaseController {
@GetMapping("/list")
public AjaxResult List()
{
return toAjax(maDevInfoService.selectList());
return success(maDevInfoService.selectList());
}
/**
@ -47,7 +48,15 @@ public class MaDevInfoController extends BaseController {
public AjaxResult typeList()
{
List<TypeVo> list = maDevInfoService.selectTypeList();
return success(list);
HashMap<String, Object> map = new HashMap<>(2);
for (TypeVo typeVo : list) {
if (typeVo.getMaStatus().equals("自有")){
map.put("self", typeVo);
} else {
map.put("rent", typeVo);
}
}
return success(map);
}
/**
@ -59,7 +68,15 @@ public class MaDevInfoController extends BaseController {
public AjaxResult maTypeList()
{
List<TypeVo> list = maDevInfoService.selectMaTypeList();
return success(list);
HashMap<String, Object> map = new HashMap<>(2);
for (TypeVo typeVo : list) {
if (typeVo.getMaStatus().equals("在租")){
map.put("use", typeVo);
} else {
map.put("rent", typeVo);
}
}
return success(map);
}
/**

View File

@ -8,6 +8,7 @@ import com.bonus.zlpt.bigscreen.service.MaLeaseInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
/**
@ -34,7 +35,15 @@ public class MaLeaseInfoController extends BaseController {
public AjaxResult typeList(MaLeaseInfo maLeaseInfo)
{
List<MaLeaseInfoVo> list = maLeaseInfoService.selectTypeList(maLeaseInfo);
return success(list);
HashMap<String, Object> map = new HashMap<>();
for (MaLeaseInfoVo leaseInfoVo : list) {
if (leaseInfoVo.getType().equals("出租")) {
map.put("rent", leaseInfoVo);
} else {
map.put("wantRent", leaseInfoVo);
}
}
return success(map);
}
}

View File

@ -7,8 +7,6 @@ import lombok.Data;
*/
@Data
public class ColtdTypeVo {
//设备id
private String maId;
//企业类型所属
private String companyType;
@ -17,7 +15,10 @@ public class ColtdTypeVo {
private String maStatus;
//数量
private String count;
private Integer count;
//设备id
private Integer maId;
//经度
private String lon;

View File

@ -0,0 +1,23 @@
package com.bonus.zlpt.bigscreen.domain.vo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 总数以及经纬度集合vo
*/
@Data
public class ColtdVo {
public ColtdVo(){
this.count = 0;
this.list = new ArrayList<>();
}
//总数
private int count;
//经纬度
private List<LonVo> list;
}

View File

@ -1,6 +1,5 @@
package com.bonus.zlpt.bigscreen.domain.vo;
import lombok.Data;
/**
@ -15,19 +14,4 @@ public class CompanyInfoVo {
//机手数量
private int count;
public String getOwnCo() {
return ownCo;
}
public void setOwnCo(String ownCo) {
this.ownCo = ownCo;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
}

View File

@ -0,0 +1,23 @@
package com.bonus.zlpt.bigscreen.domain.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 经纬度分解实体vo
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class LonVo {
//设备id
private Integer maId;
//经度
private String lon;
//维度
private String lat;
}

View File

@ -15,12 +15,6 @@ import java.util.List;
@Mapper
public interface BmCompanyInfoMapper {
/**
* 查询平台入驻单位
* @return
*/
int selectList();
/**
* 根据企业类型查询对应数量
* @param

View File

@ -4,6 +4,7 @@ import com.bonus.zlpt.bigscreen.domain.vo.CompanyInfoVo;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
* 机手信息表(BmMachinistInfo)表数据库访问层

View File

@ -13,12 +13,6 @@ import java.util.List;
*/
public interface BmCompanyInfoService {
/**
* 查询平台入驻单位
* @return
*/
int selectList();
/**
* 根据企业类型查询对应数量
* @param

View File

@ -3,6 +3,7 @@ package com.bonus.zlpt.bigscreen.service;
import com.bonus.zlpt.bigscreen.domain.vo.CompanyInfoVo;
import java.util.List;
import java.util.Map;
/**
* 机手信息表(BmMachinistInfo)表服务接口

View File

@ -20,14 +20,6 @@ public class BmCompanyInfoServiceImpl implements BmCompanyInfoService {
@Autowired
private BmCompanyInfoMapper bmCompanyInfoMapper;
/**
* 查询平台入驻单位
* @return
*/
@Override
public int selectList() {
return bmCompanyInfoMapper.selectList();
}
/**
* 根据企业类型查询对应数量

View File

@ -7,6 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* 机手信息表(BmMachinistInfo)表服务实现类

View File

@ -4,13 +4,6 @@ server:
# Spring
spring:
datasource:
# 主库数据源
master:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.0.14:2009/ma_zlpt?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
username: root
password: Bonus@admin123!
application:
# 应用名称
name: zlpt-bigScreen

View File

@ -4,10 +4,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bonus.zlpt.bigscreen.mapper.BmCompanyInfoMapper">
<select id="selectList" resultType="java.lang.Integer">
SELECT COUNT(*) AS count FROM bm_company_info
</select>
<select id="selectTypeList" resultType="com.bonus.zlpt.bigscreen.domain.vo.CoTypeVo">
SELECT company_type as coType, COUNT(*) AS count
FROM bm_company_info
@ -21,14 +17,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
m.ma_status AS maStatus,
COUNT(m.ma_id) AS count,
g.lon AS lon,
g.lat AS lat
g.lat AS lat,
m.ma_id AS maId
FROM ma_dev_info m
JOIN bm_company_info c ON m.own_co = c.company_id
JOIN gps_real_info g ON m.gps_code = g.gps_code
WHERE
m.ma_status IN ('在租', '自用', '待租')
m.ma_status IN ('在租', '自有', '待租')
GROUP BY
c.company_ltd, m.ma_status, g.lon, g.lat
c.company_ltd, m.ma_status, g.lon, g.lat,maId
</select>

View File

@ -10,5 +10,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN bm_operator_info m ON c.company_name = m.own_co
GROUP BY c.company_ltd
</select>
</mapper>

View File

@ -6,7 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectMaDevInfoList" resultType="com.bonus.zlpt.bigscreen.domain.vo.CoTypeVo">
SELECT bc.company_ltd AS title, COUNT(*) AS Count
SELECT bc.company_ltd AS coType, COUNT(*) AS Count
FROM ma_dev_info md
JOIN bm_company_info bc ON md.own_co = bc.company_id
WHERE md.ma_status = '自有'
@ -16,7 +16,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectmaList" resultType="com.bonus.zlpt.bigscreen.domain.vo.CompanyInfoVo">
SELECT mti.type_name as maName, COUNT(*) as count
SELECT mti.type_name as ownCo, COUNT(*) as count
FROM ma_type_info mti
INNER JOIN ma_dev_info mdi ON mti.type_id = mdi.type_id
WHERE mdi.ma_status = '在租'
@ -43,10 +43,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selecthotList" resultType="com.bonus.zlpt.bigscreen.domain.vo.CompanyInfoVo">
SELECT md.own_co AS ownCo, COUNT(*) AS count
SELECT bc.company_name AS ownCo, COUNT(*) AS count
FROM ma_hot_search hs
LEFT JOIN ma_dev_info md ON hs.ma_id = md.ma_id
GROUP BY md.own_co
LEFT JOIN bm_company_info bc ON md.own_co = bc.company_id
GROUP BY bc.company_name
ORDER BY count DESC
</select>