Commit 3a627f10 authored by suhuiguang's avatar suhuiguang

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

parents 74414307 55ae4ef2
......@@ -4,9 +4,12 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -208,7 +211,7 @@ public interface EquipFeignClient {
@RequestMapping(value = "/confirmAlarm/getDetailsById", method = RequestMethod.GET)
public Map<String, Object> getDetailsById(@RequestParam Long alamId, @RequestParam Long equipId, @RequestParam String type, @RequestParam String area) ;
public Map<String, Object> getDetailsById(@RequestParam Long alamId, @RequestParam(required = false) Long equipId, @RequestParam(required = false) String type, @RequestParam String area) ;
......
......@@ -95,4 +95,10 @@ public class EquipmentDto extends BaseDto {
@ApiModelProperty(value = "设备参数")
private List<EquipmentIndexDto> equipmentIndex;
@ApiModelProperty(value = "设备所属单位id")
private Long equipUnitId;
@ApiModelProperty(value = "设备所属单位")
private String equipUnit;
}
......@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.tzs.flc.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -142,4 +143,16 @@ public class Equipment extends BaseEntity {
@TableField("status")
private String status;
/**
* 设备所属单位id
*/
@TableField("equip_unit_id")
private Long equipUnitId;
/**
* 设备所属单位
*/
@TableField("equip_unit")
private String equipUnit;
}
......@@ -36,4 +36,6 @@ public interface IEquipmentService {
List<Object> getEquipmentClass(String typeCode);
EquipmentDto getEquipmentById(Long sequenceNbr);
Boolean batchDelete(List<Long> sequenceNbrList);
}
......@@ -58,4 +58,12 @@ public class FireBuildingController extends BaseController {
@ApiParam(value = "换流站code") @PathVariable String stationCode) {
return ResponseHelper.buildResponse(fireBuildingServiceImpl.buildingTree(stationCode));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "stationBuildingTree")
@ApiOperation(httpMethod = "GET", value = "换流站建筑树", notes = "换流站建筑树")
public ResponseModel stationBuildingTree (@ApiParam(value = "换流站code")
@RequestParam(value = "stationCode", required = false) String stationCode) {
return ResponseHelper.buildResponse(fireBuildingServiceImpl.stationBuildingTree(stationCode));
}
}
......@@ -51,6 +51,7 @@ public class FireVideoController extends BaseController {
@ApiParam(value = "当前页", required = true) @RequestParam(value = "current") int current,
@ApiParam(value = "页大小", required = true) @RequestParam(value = "size") int size,
@ApiParam(value = "换流站code", required = true) @PathVariable String stationCode,
@ApiParam(value = "摄像头编码") @RequestParam(value = "videoMrid", required = false) String videoMrid,
@ApiParam(value = "所在建筑,多个用逗号分隔") @RequestParam(value = "buildingMrids", required = false) String buildingMrids) {
List<String> buildingMridList = new ArrayList<>();
//根节点id(全部建筑时使用,本来可以不送来实现过滤,但是地图前端不支持)
......@@ -61,7 +62,8 @@ public class FireVideoController extends BaseController {
Page<FireVideoDto> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(fireVideoServiceImpl.queryForFireVideoPage(page, name, stationCode, buildingMridList));
String code = ("-1").equals(stationCode) ? "" : stationCode;
return ResponseHelper.buildResponse(fireVideoServiceImpl.queryForFireVideoPage(page, name, code, buildingMridList, videoMrid));
}
......
......@@ -15,6 +15,7 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
......@@ -48,6 +49,30 @@ public class FireBuildingServiceImpl extends BaseService<FireBuildingDto, FireBu
}
private List<FireBuildingDto> getChildren(String mrid, List<FireBuildingDto> dtoList) {
return dtoList.stream().filter(d -> StringUtils.isNotBlank(d.getParentMrid()) && d.getParentMrid().equals(mrid)).peek(s -> s.setChildren(this.getChildren(s.getMrid(), dtoList))).sorted(Comparator.comparing(BaseDto::getCreateDate)).collect(Collectors.toList());
return dtoList.stream().filter(d -> StringUtils.isNotBlank(d.getParentMrid()) && d.getParentMrid().equals(mrid)).
peek(s -> s.setChildren(this.getChildren(s.getMrid(), dtoList))).
sorted(Comparator.comparing(BaseDto::getCreateDate)).collect(Collectors.toList());
}
public List<FireBuildingDto> stationBuildingTree(String stationCode) {
List<FireBuildingDto> dtoList = this.queryForList("create_date", true, stationCode);
// 根据换流站code分组list
Map<String, List<FireBuildingDto>> stationMap = dtoList.stream().collect(Collectors.groupingBy(f -> f.getStationName()+"_"+f.getStationCode()));
return stationMap.keySet().stream().map(key -> {
FireBuildingDto parentNode = new FireBuildingDto();
String[] temp = key.split("_");
String name = temp[0];
String code = temp[1];
parentNode.setStationCode(code);
parentNode.setStationName(name);
parentNode.setId(code);
parentNode.setType("station");
parentNode.setName(name);
List<FireBuildingDto> childrenNode = stationMap.get(key).stream().filter(d -> StringUtils.isBlank(d.getParentMrid()) || "0".equals(d.getParentMrid()) || "-1".equals(d.getParentMrid())).
peek(s -> s.setChildren(this.getChildren(s.getMrid(), dtoList))).
sorted(Comparator.comparing(BaseDto::getCreateDate)).collect(Collectors.toList());
parentNode.setChildren(childrenNode);
return parentNode;
}).collect(Collectors.toList());
}
}
\ No newline at end of file
......@@ -23,8 +23,9 @@ public class FireVideoServiceImpl extends BaseService<FireVideoDto, FireVideo, F
/**
* 分页查询
*/
public Page<FireVideoDto> queryForFireVideoPage(Page<FireVideoDto> page, @Condition(Operator.like) String name, String stationCode, @Condition(Operator.in) List<String> buildingMrid) {
return this.queryForPage(page, "create_date", false, name, stationCode, buildingMrid);
public Page<FireVideoDto> queryForFireVideoPage(Page<FireVideoDto> page, @Condition(Operator.like) String name, String stationCode, @Condition(Operator.in) List<String> buildingMrid,
@Condition(Operator.like) String mrid) {
return this.queryForPage(page, "create_date", false, name, stationCode, buildingMrid, mrid);
}
@Override
......
......@@ -121,6 +121,8 @@ public class WechatController extends BaseController {
@Autowired
ISourceFileService sourceFileService;
private Long TOKEN_TIME = 1209600l;
/**
* 获取微信回调信息返回验证是否通过
......@@ -331,7 +333,7 @@ public class WechatController extends BaseController {
if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult();
dto.setToken(resultMap.get("token").toString());
redisUtils.set(model.getPhone() + "_token", resultMap.get("token").toString(), 25920000l);
redisUtils.set(model.getPhone() + "_token", resultMap.get("token").toString(), TOKEN_TIME);
}
return ResponseHelper.buildResponse(dto);
......@@ -349,7 +351,7 @@ public class WechatController extends BaseController {
if(loginResult.getStatus() == 200) {
HashMap resultMap = (HashMap) loginResult.getResult();
token = resultMap.get("token").toString();
redisUtils.set(tel + "_token", resultMap.get("token").toString(), 25920000l);
redisUtils.set(tel + "_token", resultMap.get("token").toString(), TOKEN_TIME);
}
return token;
}
......
package com.yeejoin.amos.boot.module.tzs.flc.biz.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitInfoDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.Equipment;
import com.yeejoin.amos.boot.module.tzs.flc.api.entity.UnitInfo;
import com.yeejoin.amos.boot.module.tzs.flc.biz.service.impl.EquipmentServiceImpl;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
......@@ -49,6 +55,10 @@ public class EquipmentController extends BaseController {
@Autowired
EquipmentServiceImpl equipmentServiceImpl;
@Autowired
OrgUsrServiceImpl iOrgUsrService;
/**
* 新增装备信息表
*
......@@ -108,6 +118,18 @@ public class EquipmentController extends BaseController {
return ResponseHelper.buildResponse(equipmentServiceImpl.deleteById(sequenceNbr));
}
/**
* 根据sequenceNbr删除
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/delete_batch")
@ApiOperation(httpMethod = "DELETE", value = "批量删除装备信息", notes = "批量删除装备信息")
public ResponseModel<Boolean> deleteBySequenceNbr(@RequestParam(value = "sequenceNbrList") List<Long> sequenceNbrList){
return ResponseHelper.buildResponse(equipmentServiceImpl.batchDelete(sequenceNbrList));
}
/**
* 列表分页查询
......@@ -139,6 +161,19 @@ public class EquipmentController extends BaseController {
private QueryWrapper<Equipment> setQueryWrapper(QueryWrapper<Equipment> queryWrapper, EquipmentDto equipmentDto, String sort) {
queryWrapper.eq("is_delete", false);
// 获取用户所在单位 保存设备所属单位
OrgUsr myUnit = null;
AgencyUserModel user = Privilege.agencyUserClient.getme().getResult();
List<CompanyModel> companys = user.getCompanys();
for(CompanyModel c : companys) {
myUnit = iOrgUsrService.getOne(new LambdaQueryWrapper<OrgUsr>().eq(OrgUsr::getIsDelete,false).eq(OrgUsr::getAmosOrgId,c.getSequenceNbr()));
}
if(myUnit == null) {
throw new BadRequest("该用户非企业人员无法查询企业设备");
}
queryWrapper.eq("equip_unit_id", myUnit.getSequenceNbr());
if(sort!=null) { // 排序失效
String[] date= sort.split(",");
if(date[1].equals("ascend")) {
......
......@@ -386,4 +386,45 @@ public class UnitPersonController extends BaseController {
/**
* 监管端-根据当前登录人获取企业列表
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/companyTreeSup")
@ApiOperation(httpMethod = "GET",value = "监管端-根据当前登录人获取企业列表", notes = "监管端-根据当前登录人获取企业列表")
public ResponseModel<List<CompanyModel>> getUserUnitSup() throws Exception {
AgencyUserModel user = Privilege.agencyUserClient.getme().getResult();
List<CompanyModel> companys = user.getCompanys();
return ResponseHelper.buildResponse(companys);
}
/**
* 监管端-角色信息
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/listMyUnitRolesSup")
@ApiOperation(httpMethod = "GET",value = "监管端-获取本单位拥有的角色信息", notes = "监管端-获取本单位拥有的角色信息")
public ResponseModel<List<RoleModel>> listMyUnitRolesSup() {
FeignClientResult<List<RoleModel>> roleListResult = Privilege.roleClient.queryRoleList(null,null);
List<RoleModel> allRoleList = roleListResult.getResult();
return ResponseHelper.buildResponse(allRoleList);
}
/**
* 监管端-应用信息
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/listMyUnitAppSup")
@ApiOperation(httpMethod = "GET",value = "监管端-获取本单位拥有的应用信息", notes = "监管端-获取本单位拥有的应用信息")
public ResponseModel<List<ApplicationModel>> listMyUnitAppSup() {
List<ApplicationModel> allApp = Privilege.applicationClient.queryAgencyApplications().getResult();
return ResponseHelper.buildResponse(allApp);
}
}
......@@ -3,7 +3,9 @@ package com.yeejoin.amos.boot.module.tzs.flc.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.biz.service.impl.OrgUsrServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentDto;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.EquipmentIndexDto;
......@@ -12,12 +14,17 @@ import com.yeejoin.amos.boot.module.tzs.flc.api.entity.EquipmentIndex;
import com.yeejoin.amos.boot.module.tzs.flc.api.enums.EquipmentStatusEnum;
import com.yeejoin.amos.boot.module.tzs.flc.api.mapper.EquipmentMapper;
import com.yeejoin.amos.boot.module.tzs.flc.api.service.IEquipmentService;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.List;
......@@ -42,6 +49,9 @@ public class EquipmentServiceImpl extends BaseService<EquipmentDto, Equipment, E
@Autowired
EquipmentIndexServiceImpl equipmentIndexServiceImpl;
@Autowired
OrgUsrServiceImpl iOrgUsrService;
/**
* 分页查询
......@@ -60,9 +70,23 @@ public class EquipmentServiceImpl extends BaseService<EquipmentDto, Equipment, E
@Override
public EquipmentDto createEquipment(EquipmentDto model) {
model.setStatus(EquipmentStatusEnum.未安装.getCode()); // 0 未安装 1 已安装
// 获取用户所在单位 保存设备所属单位
OrgUsr myUnit = null;
AgencyUserModel user = Privilege.agencyUserClient.getme().getResult();
List<CompanyModel> companys = user.getCompanys();
for(CompanyModel c : companys) {
myUnit = iOrgUsrService.getOne(new LambdaQueryWrapper<OrgUsr>().eq(OrgUsr::getIsDelete,false).eq(OrgUsr::getAmosOrgId,c.getSequenceNbr()));
}
if(myUnit == null) {
throw new BadRequest("该用户非企业人员无法添加设备");
}
model.setEquipUnitId(myUnit.getSequenceNbr());
model.setEquipUnit(myUnit.getBizOrgName());
model = this.createWithModel(model);
// 保存设备参数信息
List<EquipmentIndexDto> equipmentIndex = model.getEquipmentIndex();
if(equipmentIndex != null && equipmentIndex.size()>0) {
for(EquipmentIndexDto t : equipmentIndex) {
t.setEquipmentId(model.getSequenceNbr());
......@@ -137,6 +161,20 @@ public class EquipmentServiceImpl extends BaseService<EquipmentDto, Equipment, E
return result;
}
@Transactional
@Override
public Boolean batchDelete(List<Long> sequenceNbrList) {
for(Long sequenceNbr : sequenceNbrList) {
EquipmentDto equipmentDto = this.queryBySeq(sequenceNbr);
// 未安装设备可删除
if (!ValidationUtil.isEmpty(equipmentDto) && EquipmentStatusEnum.未安装.getCode().equals(equipmentDto.getStatus())) {
equipmentDto.setIsDelete(true);
this.updateWithModel(equipmentDto);
}
}
return true;
}
// 保存附件信息
public void saveSourceFile(EquipmentDto model) {
if (model.getAttachments() != null) {
......
......@@ -467,6 +467,18 @@
</sql>
</changeSet>
<changeSet author="kongfm" id="2021-12-07-01">
<preConditions onFail="MARK_RAN">
<tableExists tableName="tcb_equipment"/>
</preConditions>
<comment>modify table tcb_equipment add equip_unit, equip_unit_id columns</comment>
<sql>
ALTER TABLE `tcb_equipment` add equip_unit_id bigint(32) COMMENT '设备所属单位id';
ALTER TABLE `tcb_equipment` add equip_unit varchar(104) COMMENT '设备所属单位';
</sql>
</changeSet>
</databaseChangeLog>
</databaseChangeLog>
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