Commit 2bbc1c04 authored by chenhao's avatar chenhao

添加重点部位信息的建筑经纬度信息到重点部位表

parent 2d93a94a
...@@ -85,6 +85,12 @@ public class KeySiteDto extends BaseDto implements Serializable{ ...@@ -85,6 +85,12 @@ public class KeySiteDto extends BaseDto implements Serializable{
@ApiModelProperty(value = "使用性质名称") @ApiModelProperty(value = "使用性质名称")
private String useNatureName; private String useNatureName;
@ApiModelProperty(value = "经度")
private Double longitude;
@ApiModelProperty(value = "纬度")
private Double latitude;
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String remark;
......
...@@ -94,7 +94,20 @@ public interface EquipFeignClient { ...@@ -94,7 +94,20 @@ public interface EquipFeignClient {
*/ */
@RequestMapping(value = "/building/tree", method = RequestMethod.GET) @RequestMapping(value = "/building/tree", method = RequestMethod.GET)
ResponseModel<Object> getBuildingTree(); ResponseModel<Object> getBuildingTree();
/**
* 获取消防建筑详情
*
* @return
*/
@RequestMapping(value = "/building/getOne", method = RequestMethod.GET)
ResponseModel<Object> getOne(@RequestParam Long instanceId);
/**
* 获取指定建筑的经纬度信息
*
* @return
*/
@RequestMapping(value = "/building/getBuildingToLongitudeAndLatitude", method = RequestMethod.GET)
ResponseModel<Object> getBuildingToLongitudeAndLatitude(@RequestParam String instanceId);
/** /**
* 更新车辆状态 * 更新车辆状态
* *
......
package com.yeejoin.amos.boot.module.common.biz.controller; package com.yeejoin.amos.boot.module.common.biz.controller;
import com.alibaba.fastjson.JSONArray; import static org.hamcrest.CoreMatchers.nullValue;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage; import java.util.ArrayList;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.List;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import java.util.Map;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.KeySiteDto; import javax.servlet.http.HttpServletRequest;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.service.IKeySiteService; import org.apache.commons.lang3.StringUtils;
import com.yeejoin.amos.boot.module.common.api.service.IOrgUsrService;
import com.yeejoin.amos.boot.module.common.biz.service.impl.KeySiteServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
...@@ -29,11 +24,23 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation; ...@@ -29,11 +24,23 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest; import com.alibaba.fastjson.JSONArray;
import java.util.ArrayList; import com.alibaba.fastjson.JSONObject;
import java.util.Collections; import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.Map; import com.itextpdf.text.pdf.PdfStructTreeController.returnType;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.KeySiteDto;
import com.yeejoin.amos.boot.module.common.api.dto.OrgMenuDto;
import com.yeejoin.amos.boot.module.common.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.common.api.service.IKeySiteService;
import com.yeejoin.amos.boot.module.common.api.service.IOrgUsrService;
import com.yeejoin.amos.boot.module.common.biz.service.impl.KeySiteServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.SourceFileServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
* 重点部位 * 重点部位
...@@ -46,113 +53,149 @@ import java.util.Map; ...@@ -46,113 +53,149 @@ import java.util.Map;
@RequestMapping(value = "/common/key-site") @RequestMapping(value = "/common/key-site")
public class KeySiteController extends BaseController { public class KeySiteController extends BaseController {
@Autowired @Autowired
KeySiteServiceImpl keySiteServiceImpl; KeySiteServiceImpl keySiteServiceImpl;
@Autowired @Autowired
IKeySiteService keySiteService; IKeySiteService keySiteService;
@Autowired @Autowired
IOrgUsrService iOrgUsrService; IOrgUsrService iOrgUsrService;
@Autowired @Autowired
SourceFileServiceImpl sourceFileService; SourceFileServiceImpl sourceFileService;
/**
* 新增重点部位 @Autowired
* EquipFeignClient equipFeignClient;
* @return
*/ /**
@TycloudOperation(ApiLevel = UserType.AGENCY) * 新增重点部位
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save") @PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增重点部位", notes = "新增重点部位") @ApiOperation(httpMethod = "POST", value = "新增重点部位", notes = "新增重点部位")
public ResponseModel<KeySiteDto> save(@RequestBody KeySiteDto model) { public ResponseModel<KeySiteDto> save(@RequestBody KeySiteDto model) {
model.setIsDelete(false); JSONObject json = getBulid(model.getBuildingId());
KeySiteDto entity= keySiteService.save(model); if (json != null) {
return ResponseHelper.buildResponse(entity); model.setLatitude(Double.parseDouble(json.getString("latitude")));
model.setLongitude(Double.parseDouble(json.getString("longitude")));
}
model.setIsDelete(false);
KeySiteDto entity = keySiteService.save(model);
return ResponseHelper.buildResponse(entity);
}
public JSONObject getBulid(Long buildingId) {
ResponseModel<Object> equipObj = equipFeignClient.getOne(buildingId);
JSONObject equipjSONObject = JSONObject.parseObject(JSONObject.toJSONString(equipObj.getResult()));
if (!equipjSONObject.containsKey("parentId")) {
return null;
}
if (!"0".equals(equipjSONObject.getString("parentId"))) {
String parentId = equipjSONObject.getString("parentId");
if (StringUtils.isNotBlank(parentId)) {
getBulid(Long.parseLong(parentId));
}
} else {
ResponseModel<Object> equipLongitudeAndLatitudeObj = equipFeignClient
.getBuildingToLongitudeAndLatitude(equipjSONObject.getString("parentId"));
return JSONObject.parseObject(JSONObject.toJSONString(equipLongitudeAndLatitudeObj.getResult()));
}
return null;
} }
/** /**
* 根据sequenceNbr更新 * 根据sequenceNbr更新
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "update/{sequenceNbr}") @PutMapping(value = "update/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新重点部位", notes = "根据sequenceNbr更新重点部位") @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新重点部位", notes = "根据sequenceNbr更新重点部位")
public ResponseModel<Boolean> updateBySequenceNbrKeySite(@RequestBody KeySiteDto model ) { public ResponseModel<Boolean> updateBySequenceNbrKeySite(@RequestBody KeySiteDto model) {
return ResponseHelper.buildResponse(keySiteService.update(model, getUserInfo())); JSONObject json = getBulid(model.getBuildingId());
if (json != null) {
model.setLatitude(Double.parseDouble(json.getString("latitude")));
model.setLongitude(Double.parseDouble(json.getString("longitude")));
}
return ResponseHelper.buildResponse(keySiteService.update(model, getUserInfo()));
} }
/** /**
* 根据sequenceNbr删除 * 根据sequenceNbr删除
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "delete") @DeleteMapping(value = "delete")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除重点部位", notes = "根据sequenceNbr删除重点部位") @ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除重点部位", notes = "根据sequenceNbr删除重点部位")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request,@RequestParam(value = "ids") String ids){ public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request,
List<Long> sequenceNbrList = new ArrayList<>(); @RequestParam(value = "ids") String ids) {
/* BUG 2670 litw start*/ List<Long> sequenceNbrList = new ArrayList<>();
String [] idsArr = ids.split(",") ; /* BUG 2670 litw start */
for (String str:idsArr String[] idsArr = ids.split(",");
) { for (String str : idsArr) {
sequenceNbrList.add(Long.valueOf(str)); sequenceNbrList.add(Long.valueOf(str));
} }
/* BUG 2670 end*/ /* BUG 2670 end */
return ResponseHelper.buildResponse(keySiteService.deleteById(sequenceNbrList)); return ResponseHelper.buildResponse(keySiteService.deleteById(sequenceNbrList));
} }
/** /**
* 根据sequenceNbr查询 * 根据sequenceNbr查询
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "find/{sequenceNbr}") @GetMapping(value = "find/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个重点部位", notes = "根据sequenceNbr查询单个重点部位") @ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个重点部位", notes = "根据sequenceNbr查询单个重点部位")
public ResponseModel<KeySiteDto> selectOne(@PathVariable Long sequenceNbr) { public ResponseModel<KeySiteDto> selectOne(@PathVariable Long sequenceNbr) {
List<String> list = new ArrayList<String>(); List<String> list = new ArrayList<String>();
Map<String, List<AttachmentDto>> files = sourceFileService.getAttachments(sequenceNbr); Map<String, List<AttachmentDto>> files = sourceFileService.getAttachments(sequenceNbr);
KeySiteDto dto= keySiteService.getSequenceNbr(sequenceNbr); KeySiteDto dto = keySiteService.getSequenceNbr(sequenceNbr);
if(files!=null && dto!=null) { if (files != null && dto != null) {
dto.setAttachments(files); dto.setAttachments(files);
JSONArray array= JSONArray.parseArray(JSONArray.toJSONString(files.get("keySitePhoto"))); JSONArray array = JSONArray.parseArray(JSONArray.toJSONString(files.get("keySitePhoto")));
if(array!=null &&array.size()>0) { if (array != null && array.size() > 0) {
for(Object i :array) { for (Object i : array) {
JSONObject object = JSONObject.parseObject(JSONObject.toJSONString(i)); JSONObject object = JSONObject.parseObject(JSONObject.toJSONString(i));
list.add(object.getString("url")); list.add(object.getString("url"));
} }
} }
} }
dto.setAttachmentsList(list); dto.setAttachmentsList(list);
return ResponseHelper.buildResponse(dto); return ResponseHelper.buildResponse(dto);
} }
/** /**
* 列表分页查询 * 列表分页查询
* *
* @param current 当前页 * @param current 当前页
* @param current 每页大小 * @param current 每页大小
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "重点部位分页查询", notes = "重点部位分页查询") @ApiOperation(httpMethod = "GET", value = "重点部位分页查询", notes = "重点部位分页查询")
public ResponseModel<IPage<KeySiteDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam public ResponseModel<IPage<KeySiteDto>> queryForPage(@RequestParam(value = "current") int current,
(value = "size") int size,@RequestParam(required = false) String name,@RequestParam(required = false) Long buildingId,@RequestParam(required = false) String fireEnduranceRate, @RequestParam(value = "size") int size, @RequestParam(required = false) String name,
@RequestParam(required = false) String useNature,@RequestParam(required = false) String fireFacilitiesInfo,@RequestParam(required = false) Long belongId) { @RequestParam(required = false) Long buildingId, @RequestParam(required = false) String fireEnduranceRate,
Page<KeySiteDto> page = new Page<KeySiteDto>(); @RequestParam(required = false) String useNature, @RequestParam(required = false) String fireFacilitiesInfo,
page.setCurrent(current); @RequestParam(required = false) Long belongId) {
page.setSize(size); Page<KeySiteDto> page = new Page<KeySiteDto>();
return ResponseHelper.buildResponse(keySiteServiceImpl.getPageList(page,name,buildingId,fireEnduranceRate,useNature,fireFacilitiesInfo,belongId)); page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(keySiteServiceImpl.getPageList(page, name, buildingId, fireEnduranceRate,
useNature, fireFacilitiesInfo, belongId));
} }
/** /**
* 列表全部数据查询 * 列表全部数据查询
* *
* @return * @return
*/ */
// @TycloudOperation(ApiLevel = UserType.AGENCY) // @TycloudOperation(ApiLevel = UserType.AGENCY)
...@@ -161,25 +204,25 @@ public class KeySiteController extends BaseController { ...@@ -161,25 +204,25 @@ public class KeySiteController extends BaseController {
// public ResponseModel<List<KeySite>> selectForList() { // public ResponseModel<List<KeySite>> selectForList() {
// return ResponseHelper.buildResponse(keySiteServiceImpl.queryForKeySiteList()); // return ResponseHelper.buildResponse(keySiteServiceImpl.queryForKeySiteList());
// } // }
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "机场单位部位树", notes = "机场单位部位树") @ApiOperation(httpMethod = "GET", value = "机场单位部位树", notes = "机场单位部位树")
@GetMapping(value = "/getOrguserTree") @GetMapping(value = "/getOrguserTree")
public ResponseModel<List<OrgMenuDto>> getOrguserTree() { public ResponseModel<List<OrgMenuDto>> getOrguserTree() {
List<OrgMenuDto> list = new ArrayList<OrgMenuDto>(); List<OrgMenuDto> list = new ArrayList<OrgMenuDto>();
OrgMenuDto orgMenuDto =new OrgMenuDto(); OrgMenuDto orgMenuDto = new OrgMenuDto();
orgMenuDto.setChildren(keySiteService.getOrguserTree()); orgMenuDto.setChildren(keySiteService.getOrguserTree());
orgMenuDto.setName("单位管理"); orgMenuDto.setName("单位管理");
orgMenuDto.setKey(-1L); orgMenuDto.setKey(-1L);
orgMenuDto.setTitle("单位管理"); orgMenuDto.setTitle("单位管理");
list.add(orgMenuDto); list.add(orgMenuDto);
return ResponseHelper.buildResponse(list); return ResponseHelper.buildResponse(list);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "建筑部位树", notes = "建筑部位树") @ApiOperation(httpMethod = "GET", value = "建筑部位树", notes = "建筑部位树")
@GetMapping(value = "/getBuildTree/{buildingId}") @GetMapping(value = "/getBuildTree/{buildingId}")
public ResponseModel<List<OrgMenuDto>> getBuildTree(@PathVariable Long buildingId) { public ResponseModel<List<OrgMenuDto>> getBuildTree(@PathVariable Long buildingId) {
return ResponseHelper.buildResponse(keySiteService.getBuildAndKeyTree(buildingId)); return ResponseHelper.buildResponse(keySiteService.getBuildAndKeyTree(buildingId));
} }
} }
package com.yeejoin.amos.boot.module.jcs.biz.controller; package com.yeejoin.amos.boot.module.jcs.biz.controller;
import com.netflix.discovery.converters.Auto; import java.util.Map;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto; import javax.servlet.http.HttpServletResponse;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ExcelServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
...@@ -17,8 +19,14 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest; ...@@ -17,8 +19,14 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.Map; import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.ExcelServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
* 导出导入 * 导出导入
......
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