Commit 2ab24223 by 李小惠

添加大屏接口(经纬度,装备统计)

parent 4195fcd3
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -6,4 +6,5 @@ import lombok.Data;
public class GroupByCountDto {
private String name;
private Integer value;
private String typeId;
}
......@@ -31,6 +31,10 @@ public class TjOrgCountReq extends BaseRequest {
private String endTime;
//本级0,本级及下级1
@NotNull(message = "查询条件维度不能为空",groups = {edit.class})
private int levelType;
@NotNull(message = "查询条件组织机构信息不能为空",groups = {edit.class})
private String findCode;
private String orgCode;
}
\ No newline at end of file
......@@ -35,7 +35,7 @@ public class UpdateOrgReq {
@NotNull(message = "状态不能为空",groups = {ValidationApi.updateStatus.class})
private Integer delFlag;
private String findCode;
@NotNull(message = "组织机构id不能为空",groups = {ValidationApi.edit.class})
@NotNull(message = "组织机构id不能为空",groups = {ValidationApi.edit.class, ValidationApi.detail.class})
private Long orgId;
......
......@@ -4,6 +4,7 @@ import com.junmp.jyzb.api.bean.dto.ESOrgDto;
import com.junmp.jyzb.api.bean.dto.OrgDto;
import com.junmp.jyzb.api.bean.query.QueryOrgReq;
import com.junmp.jyzb.api.bean.req.UpdateOrgReq;
import com.junmp.jyzb.entity.PubOrg;
import com.junmp.jyzb.service.PubOrgService;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.common.bean.request.ValidationApi;
......@@ -89,4 +90,11 @@ public class PubOrgController {
return ApiRes.success(pubOrgService.updatePubOrg(req));
}
//获取组织机构信息(区域编码)也可以复用获取单个组织机构的所有信息
@PostMapping(path = "/getOneOrgInfo",name = "获取组织机构区域编码#enable")
@ApiOperation("获取组织机构区域编码")
public ApiRes<PubOrg> getOneOrgInfo(@RequestBody @Validated(ValidationApi.detail.class)UpdateOrgReq req){
return ApiRes.success(pubOrgService.getOneOrgInfo(req));
}
}
......@@ -10,6 +10,7 @@ import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq;
import com.junmp.jyzb.api.bean.query.WarehouseReq;
import com.junmp.jyzb.api.bean.req.WarrantyReq;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.entity.PubOrg;
import com.junmp.jyzb.entity.Temp.HumidityAndtemperature;
import com.junmp.jyzb.service.TjService;
import com.junmp.jyzb.service.VieWarrantyGroupService;
......@@ -246,9 +247,9 @@ public class TjController {
return ApiRes.success(tjService.GetGroupByCount(req));
}
//3.装备状态统计
//3.装备数量汇总统计
@PostMapping("/GetCount")
@ApiOperation("装备状态统计")
@ApiOperation("装备数量汇总统计")
public ApiRes<List<InventorySummary>> GetCount(@RequestBody TjOrgCountReq req){
return ApiRes.success(tjService.GetCount(req));
}
......@@ -275,4 +276,17 @@ public class TjController {
return ApiRes.success(tjService.GetPageOrgTj(req));
}
//7.获组织机构的经纬度
@PostMapping("/GetOrgJWDByCode")
@ApiOperation("获组织机构的经纬度")
public ApiRes<List<PubOrg>> GetOrgJWDByCode(@RequestBody TjOrgCountReq req){
return ApiRes.success(tjService.GetOrgJWDByCode(req));
}
//8.获取大屏本级装备数据
@PostMapping("/GetNameList")
@ApiOperation("获取大屏本级装备数据")
public ApiRes<List<InventorySummary>> GetNameList(@RequestBody TjOrgCountReq req){
return ApiRes.success(tjService.GetNameList(req));
}
}
......@@ -52,7 +52,7 @@ public class WarehouseController {
}
@PostMapping(path="/CheckState",name="查询仓库设备状态")
@ApiOperation("添加仓库")
@ApiOperation("查询仓库设备状态")
public ApiRes<WsWarehouseReq> CheckState(@RequestBody @Validated(ValidationApi.add.class) WarehouseReq req) {
return ApiRes.success(warehouseService.CheckState(req));
}
......
......@@ -42,4 +42,6 @@ public interface PubOrgService extends IService<PubOrg> {
Long addPubOrg(UpdateOrgReq req);
boolean updatePubOrg(UpdateOrgReq req);
PubOrg getOneOrgInfo(UpdateOrgReq req);
}
......@@ -9,6 +9,7 @@ import com.junmp.jyzb.api.bean.query.TjReq.TjOrgEqsReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPoliceReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.entity.PubOrg;
import com.junmp.v2.common.bean.response.ApiRes;
import com.junmp.v2.db.api.page.PageResult;
......@@ -85,4 +86,8 @@ public interface TjService {
SyWxBfDto GetSyWxBf(TjOrgCountReq req);
TjOrgDto GetPageOrgTj(TjOrgCountReq req);
List<PubOrg> GetOrgJWDByCode(TjOrgCountReq req);
List<InventorySummary> GetNameList(TjOrgCountReq req);
}
......@@ -802,7 +802,7 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
//根据组织机构id查询出组织机构是否存在
@Override
public PubOrg PubOrgExist(Long id) {
PubOrg puborg = getOne(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getOrgId, id));
PubOrg puborg = getById(id);
if (ObjectUtil.isEmpty(puborg)) {
//抛出组织机构不存在异常
throw new ServiceException(PubOrgExceptionEnum.PUBORG_NOT_EXIST);
......@@ -855,6 +855,11 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
return updateById(pubOrg);
}
@Override
public PubOrg getOneOrgInfo(UpdateOrgReq req) {
return PubOrgExist(req.getOrgId());
}
}
......
......@@ -10,6 +10,7 @@ import com.junmp.jyzb.api.bean.dto.InventorySumDto;
import com.junmp.jyzb.api.bean.dto.LargeScreenDto.*;
import com.junmp.jyzb.api.bean.dto.TjDto.*;
import com.junmp.jyzb.api.bean.query.InventoryReq;
import com.junmp.jyzb.api.bean.query.InventorySumReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgCountReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgEqsReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPoliceReq;
......@@ -1044,8 +1045,16 @@ public class TjServiceImpl implements TjService {
@Override
public AreaTypeDto GetAreaType(TjOrgCountReq req) {
PubOrg pubOrg = pubOrgService.list(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getFindCode, req.getFindCode())
.orderByAsc(PubOrg::getLevelFlag)).get(0);
int length = req.getFindCode().length();
PubOrg pubOrg=new PubOrg();
if (length<12){
pubOrg = pubOrgService.list(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getFindCode, req.getFindCode())
.orderByAsc(PubOrg::getLevelFlag)).get(0);
}else {
pubOrg = pubOrgService.list(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getOrgCode, req.getFindCode())
.orderByAsc(PubOrg::getLevelFlag)).get(0);
}
//将九大类查询出来并且存入返回对象中去
List<String> typeNames = equipmentCountSummaryMapper.getTypeParentName();
AreaTypeDto areaTypeDto = new AreaTypeDto();
......@@ -1092,6 +1101,21 @@ public class TjServiceImpl implements TjService {
return tjOrgDto;
}
@Override
public List<PubOrg> GetOrgJWDByCode(TjOrgCountReq req) {
return pubOrgService.list(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getDelFlag,1).eq(PubOrg::getFindCode,req.getFindCode()));
}
@Override
public List<InventorySummary> GetNameList(TjOrgCountReq req) {
PubOrg one = pubOrgService.getOne(new LambdaQueryWrapper<PubOrg>().eq(PubOrg::getOrgCode, req.getOrgCode()));
InventorySumReq sumReq = new InventorySumReq();
sumReq.setOrgId(one.getOrgId().toString());
sumReq.setColumn("create_time");
return inventorySummaryMapper.GetEquipmentSummary(sumReq,null,null);
}
//-------------------------------------------人员统计报表----------------------------------------------------------
@Override
......
......@@ -74,6 +74,7 @@ public class WarehouseWebSocketServer implements WebSocketServerListener {
ObjectMapper objectMapper = new ObjectMapper();
WsWarehouseReq deviceData = objectMapper.readValue(text, WsWarehouseReq.class);
String warehouseId = deviceData.getWarehouseId();
deviceData.getOrgId();
String redisExist= redisCache.get(warehouseId);
if(redisExist!=null)//已有存在数据
{
......
......@@ -194,19 +194,16 @@
GROUP BY et.id,et.name,a.org_id
</select>
<select id="TjOrgCountleve4" resultType="com.junmp.jyzb.api.bean.dto.TjDto.TjOrgCountDto">
select t1.org_id,t1.org_code,t1.org_name,t1.d_name,t2.year,t2.use_count,t2.fix_count,t2.number
FROM(
SELECT
`org_id`, `org_code`, `org_name`, `d_name`
FROM `pub_org`
WHERE org_id=#{orgId}
) as t1
CROSS JOIN (
SELECT
MAX(t.`year`) AS `year`,
SUM(t.use_count) AS use_count,
SUM(t.fix_count) AS fix_count,
sum(CASE WHEN t.month = MONTH(CURRENT_DATE()) THEN t.number ELSE 0 END) AS number
sum(CASE WHEN t.month = MONTH(CURRENT_DATE()) THEN t.number ELSE 0 END) AS number,
(SELECT `org_id` FROM `pub_org` WHERE `org_id` = 1369509498032811869 OR `org_parent_ids` LIKE CONCAT('%', 1369509498032811869, '%') ORDER BY `level_flag` LIMIT 1) AS org_id,
(SELECT `org_code` FROM `pub_org` WHERE `org_id` = 1369509498032811869 OR `org_parent_ids` LIKE CONCAT('%', 1369509498032811869, '%') ORDER BY `level_flag` LIMIT 1) AS org_code,
(SELECT `org_name` FROM `pub_org` WHERE `org_id` = 1369509498032811869 OR `org_parent_ids` LIKE CONCAT('%', 1369509498032811869, '%') ORDER BY `level_flag` LIMIT 1) AS org_name,
(SELECT `d_name` FROM `pub_org` WHERE `org_id` = 1369509498032811869 OR `org_parent_ids` LIKE CONCAT('%', 1369509498032811869, '%') ORDER BY `level_flag` LIMIT 1) AS d_name
FROM (
SELECT
vecs.`year`,
......@@ -248,58 +245,51 @@
</if>
GROUP BY `year`,month
) AS t
)as t2
</select>
<select id="TjOrgCountSelf" resultType="com.junmp.jyzb.api.bean.dto.TjDto.TjOrgCountDto">
select t1.org_id,t1.org_code,t1.org_name,t1.d_name,t2.year,t2.use_count,t2.fix_count,t2.number
FROM(
SELECT
`org_id`, `org_code`, `org_name`, `d_name`
FROM `pub_org`
WHERE org_id=#{orgId}
) as t1
CROSS JOIN (
SELECT
MAX(t.`year`) AS `year`,
SUM(t.use_count) AS use_count,
SUM(t.fix_count) AS fix_count,
sum(CASE WHEN t.month = MONTH(CURRENT_DATE()) THEN t.number ELSE 0 END) AS number
FROM (
SELECT
vecs.`year`,
vecs.`month`,
SUM(vecs.use_count) AS use_count,
SUM(vecs.fix_count) AS fix_count,
sum(vecs.number) as number
FROM vie_equipment_count_summary vecs
left join pub_org po on vecs.org_id_int=po.org_id
where vecs.`year`= #{year} and po.del_flag=1 AND po.org_id = #{orgId}
<if test="typeIdsList!=null and typeIdsList.size() > 0">
and vecs.type_id in
<foreach collection="typeIdsList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="typeParentId != null and typeParentId !=''">
and vecs.type_parent_id=#{typeParentId}
</if>
<if test="sizeNameList!=null and sizeNameList.size() > 0">
AND
<foreach collection="sizeNameList " item="item" open="(" separator="or" close=")">
vecs.size_name like CONCAT('%', #{item}, '%')
</foreach>
</if>
<if test="monthList != null and monthList.size()>0">
and vecs.month in
<foreach collection="monthList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
GROUP BY `year`,month
) AS t
)as t2
SELECT
MAX(t.`year`) AS `year`,
SUM(t.use_count) AS use_count,
SUM(t.fix_count) AS fix_count,
sum(CASE WHEN t.month = MONTH(CURRENT_DATE()) THEN t.number ELSE 0 END) AS number,
(SELECT `org_id` FROM `pub_org` WHERE `org_id` = #{orgId} ) AS org_id,
(SELECT `org_code` FROM `pub_org` WHERE `org_id` = #{orgId} ) AS org_code,
(SELECT `org_name` FROM `pub_org` WHERE `org_id` = #{orgId} ) AS org_name,
(SELECT `d_name` FROM `pub_org` WHERE `org_id` = #{orgId} ) AS d_name
FROM (
SELECT
vecs.`year`,
vecs.`month`,
SUM(vecs.use_count) AS use_count,
SUM(vecs.fix_count) AS fix_count,
sum(vecs.number) as number
FROM vie_equipment_count_summary vecs
where vecs.`year`= #{year} and vecs.org_id_int = #{orgId}
<if test="typeIdsList!=null and typeIdsList.size() > 0">
and vecs.type_id in
<foreach collection="typeIdsList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="typeParentId != null and typeParentId !=''">
and vecs.type_parent_id=#{typeParentId}
</if>
<if test="sizeNameList!=null and sizeNameList.size() > 0">
AND
<foreach collection="sizeNameList " item="item" open="(" separator="or" close=")">
vecs.size_name like CONCAT('%', #{item}, '%')
</foreach>
</if>
<if test="monthList != null and monthList.size()>0">
and vecs.month in
<foreach collection="monthList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
GROUP BY `year`,month
) AS t
</select>
<select id="TjOrgCountTotalNum" resultType="com.junmp.jyzb.api.bean.dto.TjDto.TjOrgCountDto">
......@@ -460,20 +450,33 @@
`vie_equipment_count_summary`
WHERE
SUBSTRING( org_code, 1, #{length} ) = #{req.findCode} and year=YEAR(NOW()) and month=MONTH(NOW())
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
<if test="length != 12">
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
</if>
</if>
<if test="length == 12">
and org_id_int =(select org_id FROM pub_org where org_code=#{req.findCode} )
</if>
GROUP BY
type_name
ORDER BY item_num desc
limit 0,5
</select>
<select id="GetGroupByCount" resultType="com.junmp.jyzb.api.bean.dto.LargeScreenDto.GroupByCountDto">
select t.`value`,base_equipment_type.name as `name` FROM(
select t.`value`,base_equipment_type.name as `name`,base_equipment_type.id as typeId FROM(
select sum(bis.number) as value,SUBSTRING_INDEX(et.parent_ids, ",", 1) AS type_parent_id FROM (
select number,type_id FROM base_inventory_summary bis where SUBSTRING( org_code, 1, #{length} ) = #{req.findCode} and bis.location_type=0
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
<if test="length != 12">
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
</if>
</if>
<if test="length == 12">
and org_id_int =(select org_id FROM pub_org where org_code=#{req.findCode} )
</if>
) as bis
join base_equipment_type et on et.id= bis.type_id GROUP BY type_parent_id
......@@ -486,8 +489,14 @@
sum(expire_number)as expireNumber,sum(broken_number)as brokenNumber,
sum(fix_number)as fixNumber,sum(use_number)as useNumber
FROM base_inventory_summary where SUBSTRING( org_code, 1, #{length} ) = #{req.findCode} and location_type=0
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
<if test="length != 12">
<if test="req.levelType == 0">
and org_id_int =(select org_id FROM pub_org where find_code=#{req.findCode} ORDER BY level_flag asc limit 0,1 )
</if>
</if>
<if test="length == 12">
and org_id_int =(select org_id FROM pub_org where org_code=#{req.findCode} )
</if>
</select>
<select id="getTypeParentName" resultType="java.lang.String">
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论