Commit 627e4f06 authored by chenhao's avatar chenhao

Merge branch 'developer' of http://39.98.45.134:8090/moa/amos-boot-biz into developer

parents 40549014 6cc22056
...@@ -76,10 +76,8 @@ public class MetaHandler implements MetaObjectHandler { ...@@ -76,10 +76,8 @@ public class MetaHandler implements MetaObjectHandler {
this.setFieldValByName("recDate", currentDate, metaObject); this.setFieldValByName("recDate", currentDate, metaObject);
} }
//以下为装备中转移过来的 //以下为装备中转移过来的
if (isExistField("userId", entity)&&isStringField(metaObject,"userId")) { if (isExistField("userId", entity) && isStringField(metaObject,"userId")) {
this.setFieldValByName("userId", String.valueOf(agencyUserModel.getUserId()), metaObject); this.setFieldValByName("userId", String.valueOf(agencyUserModel.getUserId()), metaObject);
} }
...@@ -122,24 +120,19 @@ public class MetaHandler implements MetaObjectHandler { ...@@ -122,24 +120,19 @@ public class MetaHandler implements MetaObjectHandler {
} }
return jsonObj.containsKey(field); return jsonObj.containsKey(field);
} }
private Boolean isStringField(MetaObject metaObject,String fieldName) {
private Boolean isStringField(MetaObject metaObject, String fieldName) {
Class clazz = metaObject.getOriginalObject().getClass(); Class clazz = metaObject.getOriginalObject().getClass();
Field[] fields = clazz.getDeclaredFields(); Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) { for (Field field : fields) {
if (fieldName.equals(field.getName()) &&("class java.lang.String").equals(field.getGenericType().toString())) { if (fieldName.equals(field.getName()) && ("class java.lang.String").equals(field.getGenericType().toString())) {
return true; return true;
} }
} }
return false; return false;
} }
/** /**
* 更新拦截 * 更新拦截
* *
......
...@@ -27,6 +27,8 @@ public class BaseTreeNode { ...@@ -27,6 +27,8 @@ public class BaseTreeNode {
private List<BaseTreeNode> children; private List<BaseTreeNode> children;
private String companyId;
public BaseTreeNode() { public BaseTreeNode() {
} }
...@@ -37,7 +39,12 @@ public class BaseTreeNode { ...@@ -37,7 +39,12 @@ public class BaseTreeNode {
public void setId(String id) { public void setId(String id) {
this.id = id; this.id = id;
} }
public void setCompanyId(String companyId) {
this.companyId = companyId;
}
public String getCompanyId() {
return companyId;
}
public String getParentId() { public String getParentId() {
return parentId; return parentId;
} }
......
...@@ -296,6 +296,60 @@ public class TreeNodeUtil { ...@@ -296,6 +296,60 @@ public class TreeNodeUtil {
} }
} }
} }
/**
* 封装整个树状图数据
*
* @param listNodes 要处理列表集合节点数据
*/
public static <T extends BaseTreeNode> List<T> assembleTreeTs(List<T> listNodes) {
List<T> newTreeNodes = new ArrayList<>();
// 循环赋值最上面的节点数据
// 赋值最上面节点的值
List<T> collect = listNodes.stream()
.filter(t -> StringUtils.isEmpty(t.getParentId()) || "null".equals(t.getParentId()) || "0".equals(t.getParentId()) || "-1".equals(t.getParentId()))
.collect(Collectors.toList());
newTreeNodes.addAll(collect);
// 循环处理子节点数据
for (T t : newTreeNodes) {
//递归
assembleTree2(t, listNodes);
}
return newTreeNodes;
}
static <T extends BaseTreeNode> void assembleTree2(T node, List<T> listNodes) {
if (node != null && !CollectionUtils.isEmpty(listNodes)) {
// 循环节点数据,如果是子节点则添加起来
listNodes.stream().filter(t -> Objects.equals(t.getParentId(), node.getId())).forEachOrdered(node::addChild);
// 循环处理子节点数据,递归
if (!CollectionUtils.isEmpty(node.getChildren())) {
for (Object t : node.getChildren()) {
//递归
//listNodes.remove(t);
assembleTreeSon((T) t, listNodes);
}
}
}
}
static <T extends BaseTreeNode> void assembleTreeSon(T node, List<T> listNodes) {
if (node != null && !CollectionUtils.isEmpty(listNodes)) {
// 循环节点数据,如果是子节点则添加起来
listNodes.stream().filter(t -> t.getParentId().equals(node.getId()) && t.getCompanyId().equals(node.getCompanyId() == null ?node.getParentId():node.getCompanyId() ) ).forEachOrdered(node::addChild);
// 循环处理子节点数据,递归
if (!CollectionUtils.isEmpty(node.getChildren())) {
for (Object t : node.getChildren()) {
//递归
//listNodes.remove(t);
assembleTreeSon((T) t, listNodes);
}
}
}
}
static <T extends BaseTreeNode> void assembleTree_1(T node, List<T> listNodes) { static <T extends BaseTreeNode> void assembleTree_1(T node, List<T> listNodes) {
if (node != null && !CollectionUtils.isEmpty(listNodes)) { if (node != null && !CollectionUtils.isEmpty(listNodes)) {
// 循环节点数据,如果是子节点则添加起来 // 循环节点数据,如果是子节点则添加起来
......
...@@ -32,6 +32,8 @@ public interface MaintenanceResourceDataMapper extends BaseMapper<MaintenanceRes ...@@ -32,6 +32,8 @@ public interface MaintenanceResourceDataMapper extends BaseMapper<MaintenanceRes
*/ */
public List<MaintenanceResourceData> selectMaintenanceResourceDataList(MaintenanceResourceData maintenanceResourceData); public List<MaintenanceResourceData> selectMaintenanceResourceDataList(MaintenanceResourceData maintenanceResourceData);
public List<MaintenanceResourceData> selectMaintenanceResourceDataListByclassifyId();
/** /**
* 新增消防设施资源数据 * 新增消防设施资源数据
* *
......
...@@ -59,6 +59,8 @@ public interface MaintenanceResourceMapper extends BaseMapper<MaintenanceResourc ...@@ -59,6 +59,8 @@ public interface MaintenanceResourceMapper extends BaseMapper<MaintenanceResourc
*/ */
public int deleteMaintenanceResourceById(Long id); public int deleteMaintenanceResourceById(Long id);
/** /**
* 批量删除维保设施资源树 * 批量删除维保设施资源树
* *
...@@ -71,6 +73,8 @@ public interface MaintenanceResourceMapper extends BaseMapper<MaintenanceResourc ...@@ -71,6 +73,8 @@ public interface MaintenanceResourceMapper extends BaseMapper<MaintenanceResourc
List<MaintenanceResourceDto> selectAll(); List<MaintenanceResourceDto> selectAll();
List<MaintenanceResourceDto> selectAllType();
List<MaintenanceResourceDataVo> findByIds(@Param("list") List<Long> ids); List<MaintenanceResourceDataVo> findByIds(@Param("list") List<Long> ids);
List<MaintenanceResourceDto> findTreeById(Long id); List<MaintenanceResourceDto> findTreeById(Long id);
......
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; ...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence; import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
...@@ -146,6 +147,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -146,6 +147,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
FireFightingSystemMapper fireFightingSystemMapper; FireFightingSystemMapper fireFightingSystemMapper;
@Autowired @Autowired
@Lazy
IEquipmentSpecificAlarmService equipmentSpecificAlarmService; IEquipmentSpecificAlarmService equipmentSpecificAlarmService;
@Value("${systemctl.sync.switch}") @Value("${systemctl.sync.switch}")
...@@ -678,7 +680,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -678,7 +680,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
PartDetailVO partDetail = new PartDetailVO(); PartDetailVO partDetail = new PartDetailVO();
partDetail.setValue("部件详情"); partDetail.setValue("部件详情");
devOverview.setOperaState(StringUtils.isNotEmpty(equipmentSecificDetail.getStatus()) ? equipmentSecificDetail.getStatus() : "1"); devOverview.setOperaState(StringUtil.isNotEmpty(equipmentSecificDetail.getStatus()) ? equipmentSecificDetail.getStatus() : "1");
Map<String, Object> operaStateMap = new HashMap<>(); Map<String, Object> operaStateMap = new HashMap<>();
operaStateMap.put("1", "正常"); operaStateMap.put("1", "正常");
operaStateMap.put("2", "报警"); operaStateMap.put("2", "报警");
...@@ -920,7 +922,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -920,7 +922,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override @Override
public boolean equipmentgetIsSingleByQrcode(String qrCode, Long equipmentSpecifticId) { public boolean equipmentgetIsSingleByQrcode(String qrCode, Long equipmentSpecifticId) {
EquipmentSpecific equipmentSpecific; EquipmentSpecific equipmentSpecific;
if (StringUtils.isEmpty(qrCode)) { if (StringUtils.isBlank(qrCode)) {
QueryWrapper<EquipmentSpecific> wrapper = new QueryWrapper<>(); QueryWrapper<EquipmentSpecific> wrapper = new QueryWrapper<>();
wrapper.eq("equipment_specific_id", equipmentSpecifticId); wrapper.eq("equipment_specific_id", equipmentSpecifticId);
equipmentSpecific = this.baseMapper.selectOne(wrapper); equipmentSpecific = this.baseMapper.selectOne(wrapper);
...@@ -1110,7 +1112,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -1110,7 +1112,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override @Override
public List<EquipmentOnCarVo> getAirEquipSpecificList(String like, String notLike, Integer status) { public List<EquipmentOnCarVo> getAirEquipSpecificList(String like, String notLike, Integer status) {
String[] split = null; String[] split = null;
if (StringUtils.isNotEmpty(notLike)) { if (StringUtil.isNotEmpty(notLike)) {
split = notLike.split(","); split = notLike.split(",");
} }
List<EquipmentOnCarVo> list = equipmentSpecificMapper.getAirEquipSpecificList(like, split, status); List<EquipmentOnCarVo> list = equipmentSpecificMapper.getAirEquipSpecificList(like, split, status);
...@@ -1123,7 +1125,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -1123,7 +1125,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Override @Override
public IPage<EquipmentOnCarVo> onCarVoIPage(EquipmentSpecificDto equipmentSpecificDto) { public IPage<EquipmentOnCarVo> onCarVoIPage(EquipmentSpecificDto equipmentSpecificDto) {
String[] strs = null; String[] strs = null;
if (StringUtils.isNotEmpty(codes)) { if (StringUtil.isNotEmpty(codes)) {
strs = codes.split(","); strs = codes.split(",");
} }
equipmentSpecificDto.setCodes(strs); equipmentSpecificDto.setCodes(strs);
...@@ -1186,15 +1188,15 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM ...@@ -1186,15 +1188,15 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
equipmentSpecific.setEquipmentCode(equipmentCode); equipmentSpecific.setEquipmentCode(equipmentCode);
equipmentSpecific.setName(equipmentDetail.getName()); equipmentSpecific.setName(equipmentDetail.getName());
if (StringUtils.isNotEmpty(equipmentDetail.getArea())) { if (StringUtil.isNotEmpty(equipmentDetail.getArea())) {
String[] addressData = equipmentDetail.getArea().split("@address@"); String[] addressData = equipmentDetail.getArea().split("@address@");
if (addressData.length > 1) { if (addressData.length > 1) {
equipmentDetail.setArea(addressData[0]); equipmentDetail.setArea(addressData[0]);
JSONObject langLatObj = JSON.parseObject(addressData[1]); JSONObject langLatObj = JSON.parseObject(addressData[1]);
if (StringUtils.isNotEmpty(langLatObj.getString("longitude"))) { if (StringUtil.isNotEmpty(langLatObj.getString("longitude"))) {
equipmentDetail.setLongitude(Double.valueOf(langLatObj.getString("longitude"))); equipmentDetail.setLongitude(Double.valueOf(langLatObj.getString("longitude")));
} }
if (StringUtils.isNotEmpty(langLatObj.getString("latitude"))) { if (StringUtil.isNotEmpty(langLatObj.getString("latitude"))) {
equipmentDetail.setLatitude(Double.valueOf(langLatObj.getString("latitude"))); equipmentDetail.setLatitude(Double.valueOf(langLatObj.getString("latitude")));
} }
} }
......
...@@ -120,11 +120,27 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou ...@@ -120,11 +120,27 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou
@Override @Override
public List<MaintenanceResourceDto> getMaintenanceResourceTree(String appKey, String product, String token) { public List<MaintenanceResourceDto> getMaintenanceResourceTree(String appKey, String product, String token) {
List<MaintenanceResourceDto> list = this.selectAll(); //从维保设施资源表中获取所有资源
List<MaintenanceResourceData> maintenanceResourceData = maintenanceResourceDataMapper.selectMaintenanceResourceDataListByclassifyId();
//获取第三层分类节点
List<MaintenanceResourceDto> maintenanceResourceDtos = this.baseMapper.selectAllType();
List<MaintenanceResourceDto> list = new ArrayList<>();
maintenanceResourceData.stream().forEach(e-> {
MaintenanceResourceDto e1 = new MaintenanceResourceDto();
e1.setId(e.getClassifyId().toString());
e1.setName(e.getClassifyName());
e1.setCompanyId(e.getMaintenanceCompanyId().toString());
e1.setType(MaintenanceResourceEnum.CLASSIFY.getValue());
e1.setParentId(e.getFireFightSysId().toString());
e1.setCode(e.getClassifyCode());
list.add(e1);
});
// List<MaintenanceResourceDto> list = this.selectAll();
if (!CollectionUtils.isEmpty(list)) { if (!CollectionUtils.isEmpty(list)) {
//获取维保单位和业主单位
List<MaintenanceResourceDto> companyTree = getCompanyList(appKey, product, token); List<MaintenanceResourceDto> companyTree = getCompanyList(appKey, product, token);
if (!CollectionUtils.isEmpty(companyTree)) { if (!CollectionUtils.isEmpty(companyTree)) {
List<MaintenanceResourceDto> result = new ArrayList<>(); /* List<MaintenanceResourceDto> result = new ArrayList<>();
result.addAll(list); result.addAll(list);
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
for (int j = 0; j < companyTree.size(); j++) { for (int j = 0; j < companyTree.size(); j++) {
...@@ -132,9 +148,8 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou ...@@ -132,9 +148,8 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou
result.remove(list.get(i)); result.remove(list.get(i));
} }
} }
} }*/
/* result.addAll(companyTree);
result.addAll(companyTree);
result.forEach(e->{if (e.getContractId() == null){ result.forEach(e->{if (e.getContractId() == null){
e.setContractId(QRCodeUtil.generateQRCode()); e.setContractId(QRCodeUtil.generateQRCode());
} }
...@@ -145,9 +160,11 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou ...@@ -145,9 +160,11 @@ public class MaintenanceResourceServiceImpl extends ServiceImpl<MaintenanceResou
entry.getValue().ifPresent(v -> { entry.getValue().ifPresent(v -> {
dataList.add(v); dataList.add(v);
}); });
}); });*/
list.addAll(companyTree);
return TreeNodeUtil.assembleTree(dataList); list.addAll(maintenanceResourceDtos);
//避免造成其他代码bug,替换新的组装树
return TreeNodeUtil.assembleTreeTs(list);
} }
return TreeNodeUtil.assembleTree(list); return TreeNodeUtil.assembleTree(list);
} else { } else {
......
...@@ -32,6 +32,36 @@ ...@@ -32,6 +32,36 @@
select id, maintenance_company_id, maintenance_company_code, maintenance_company_name, owner_unit_id, owner_unit_code, owner_unit_name, fire_fight_sys_id, fire_fight_sys_code, fire_fight_sys_name, classify_id, classify_code, classify_name, classify_type, fire_facility_id, fire_facility_code, fire_facility_name, fire_facility_type, maintenance_expiration_time, maintenance_time, maintenance_cycle, create_date from mt_maintenance_resource_data select id, maintenance_company_id, maintenance_company_code, maintenance_company_name, owner_unit_id, owner_unit_code, owner_unit_name, fire_fight_sys_id, fire_fight_sys_code, fire_fight_sys_name, classify_id, classify_code, classify_name, classify_type, fire_facility_id, fire_facility_code, fire_facility_name, fire_facility_type, maintenance_expiration_time, maintenance_time, maintenance_cycle, create_date from mt_maintenance_resource_data
</sql> </sql>
<select id="selectMaintenanceResourceDataListByclassifyId" parameterType="com.yeejoin.equipmanage.common.entity.MaintenanceResourceData"
resultMap="MaintenanceResourceDataResult">
SELECT
id,
maintenance_company_id,
maintenance_company_code,
maintenance_company_name,
owner_unit_id,
owner_unit_code,
owner_unit_name,
fire_fight_sys_id,
fire_fight_sys_code,
fire_fight_sys_name,
classify_id,
classify_code,
classify_name,
classify_type,
fire_facility_id,
fire_facility_code,
fire_facility_name,
fire_facility_type,
maintenance_expiration_time,
maintenance_time,
maintenance_cycle,
create_date
FROM
mt_maintenance_resource_data
GROUP BY classify_id
</select>
<select id="selectMaintenanceResourceDataList" <select id="selectMaintenanceResourceDataList"
parameterType="com.yeejoin.equipmanage.common.entity.MaintenanceResourceData" parameterType="com.yeejoin.equipmanage.common.entity.MaintenanceResourceData"
resultMap="MaintenanceResourceDataResult"> resultMap="MaintenanceResourceDataResult">
......
...@@ -124,6 +124,23 @@ ...@@ -124,6 +124,23 @@
`mt_maintenance_resource` m `mt_maintenance_resource` m
]]> ]]>
</select> </select>
<select id="selectAllType" resultType="com.yeejoin.equipmanage.common.dto.MaintenanceResourceDto">
<![CDATA[
SELECT
maintenance_company_id as companyId,
fire_fight_sys_id AS id,
fire_fight_sys_name name ,
owner_unit_id as parentId,
IFNULL(classify_type,3)
FROM
`mt_maintenance_resource_data`
GROUP BY
owner_unit_id,
maintenance_company_id,
fire_fight_sys_id
]]>
</select>
<select id="findTreeById" resultType="com.yeejoin.equipmanage.common.dto.MaintenanceResourceDto"> <select id="findTreeById" resultType="com.yeejoin.equipmanage.common.dto.MaintenanceResourceDto">
<![CDATA[ <![CDATA[
SELECT SELECT
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment