From b7b228f4b6a2a7d07f67c00c80aa802978ece452 Mon Sep 17 00:00:00 2001 From: guoyuepeng <770272267@qq.com> Date: Wed, 11 Sep 2024 17:33:07 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BC=81=E4=B8=9A=E7=AB=AF=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E9=97=A8=E5=8F=A3=E9=97=A8=E7=A6=81=E5=92=8C=E4=BA=BA=E5=91=98?= =?UTF-8?q?=E5=AE=9A=E4=BD=8D=E7=B3=BB=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../door/MkmjRelationController.java | 187 ++++++++++ .../door/PlatformDoorVideoController.java | 207 +++++++++++ .../zcloud/controller/map/MapController.java | 92 ++++- .../mapper/dsno2/door/DoorAreaMapper.java | 71 ++++ .../mapper/dsno2/door/MkmjDeviceMapper.java | 74 ++++ .../dsno2/door/MkmjDoorVideoMapper.java | 73 ++++ .../mapper/dsno2/door/MkmjPathMapper.java | 77 +++++ .../mapper/dsno2/door/MkmjRelationMapper.java | 81 +++++ .../dsno2/door/PlatformDoorVideoMapper.java | 78 +++++ .../zcloud/service/door/DoorAreaService.java | 59 ++++ .../service/door/MkmjDeviceService.java | 67 ++++ .../zcloud/service/door/MkmjPathService.java | 74 ++++ .../service/door/MkmjRelationService.java | 75 ++++ .../door/PlatformDoorVideoService.java | 76 ++++ .../door/impl/DoorAreaServiceImpl.java | 162 +++++++++ .../door/impl/MkmjDeviceServiceImpl.java | 143 ++++++++ .../door/impl/MkmjPathServiceImpl.java | 200 +++++++++++ .../door/impl/MkmjRelationServiceImpl.java | 149 ++++++++ .../impl/PlatformDoorVideoServiceImpl.java | 100 ++++++ .../map/impl/GateMachineServiceImpl.java | 56 ++- .../com/zcloud/util/hk/HKPostApiUtil.java | 268 +++++++++++++++ .../mybatis/dsno2/door/DoorAreaMapper.xml | 228 ++++++++++++ .../mybatis/dsno2/door/MkmjDeviceMapper.xml | 217 ++++++++++++ .../dsno2/door/MkmjDoorVideoMapper.xml | 202 +++++++++++ .../mybatis/dsno2/door/MkmjPathMapper.xml | 244 +++++++++++++ .../mybatis/dsno2/door/MkmjRelationMapper.xml | 325 ++++++++++++++++++ .../dsno2/door/PlatformDoorVideoMapper.xml | 236 +++++++++++++ 27 files changed, 3802 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/zcloud/controller/door/MkmjRelationController.java create mode 100644 src/main/java/com/zcloud/controller/door/PlatformDoorVideoController.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/DoorAreaMapper.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/MkmjDeviceMapper.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/MkmjDoorVideoMapper.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/MkmjPathMapper.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/MkmjRelationMapper.java create mode 100644 src/main/java/com/zcloud/mapper/dsno2/door/PlatformDoorVideoMapper.java create mode 100644 src/main/java/com/zcloud/service/door/DoorAreaService.java create mode 100644 src/main/java/com/zcloud/service/door/MkmjDeviceService.java create mode 100644 src/main/java/com/zcloud/service/door/MkmjPathService.java create mode 100644 src/main/java/com/zcloud/service/door/MkmjRelationService.java create mode 100644 src/main/java/com/zcloud/service/door/PlatformDoorVideoService.java create mode 100644 src/main/java/com/zcloud/service/door/impl/DoorAreaServiceImpl.java create mode 100644 src/main/java/com/zcloud/service/door/impl/MkmjDeviceServiceImpl.java create mode 100644 src/main/java/com/zcloud/service/door/impl/MkmjPathServiceImpl.java create mode 100644 src/main/java/com/zcloud/service/door/impl/MkmjRelationServiceImpl.java create mode 100644 src/main/java/com/zcloud/service/door/impl/PlatformDoorVideoServiceImpl.java create mode 100644 src/main/java/com/zcloud/util/hk/HKPostApiUtil.java create mode 100644 src/main/resources/mybatis/dsno2/door/DoorAreaMapper.xml create mode 100644 src/main/resources/mybatis/dsno2/door/MkmjDeviceMapper.xml create mode 100644 src/main/resources/mybatis/dsno2/door/MkmjDoorVideoMapper.xml create mode 100644 src/main/resources/mybatis/dsno2/door/MkmjPathMapper.xml create mode 100644 src/main/resources/mybatis/dsno2/door/MkmjRelationMapper.xml create mode 100644 src/main/resources/mybatis/dsno2/door/PlatformDoorVideoMapper.xml diff --git a/src/main/java/com/zcloud/controller/door/MkmjRelationController.java b/src/main/java/com/zcloud/controller/door/MkmjRelationController.java new file mode 100644 index 00000000..1b079bb1 --- /dev/null +++ b/src/main/java/com/zcloud/controller/door/MkmjRelationController.java @@ -0,0 +1,187 @@ +package com.zcloud.controller.door; + +import com.zcloud.controller.base.BaseController; +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.service.door.MkmjRelationService; +import com.zcloud.util.DateUtil; +import com.zcloud.util.Jurisdiction; +import com.zcloud.util.Tools; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.*; + +@Controller +@RequestMapping("/mkmjRelation") +public class MkmjRelationController extends BaseController { + + @Autowired + private MkmjRelationService mkmjRelationService; + + /**新增 + * @param + * @throws Exception + */ + @RequestMapping(value="/add") + @RequiresPermissions("mkmjDoor:add") + @ResponseBody + public Object add() throws Exception{ + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("CREATOR", Jurisdiction.getUSER_ID()); // 添加人 + pd.put("CREATTIME", DateUtil.date2Str(new Date())); // 添加时间 + pd.put("ISDELETE", "0"); //是否删除 + pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date()));//修改时间 + return mkmjRelationService.save(pd); + } + + /**删除 + * @param + * @throws Exception + */ + @RequestMapping(value="/delete") + @RequiresPermissions("mkmjDoor:del") + @ResponseBody + public Object delete() throws Exception{ + PageData pd = new PageData(); + pd = this.getPageData(); + return mkmjRelationService.delete(pd); + } + + /**修改 + * @param + * @throws Exception + */ + @RequestMapping(value="/edit") + @RequiresPermissions("mkmjDoor:edit") + @ResponseBody + public Object edit() throws Exception{ + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date()));//修改时间 + return mkmjRelationService.edit(pd); + } + + /**列表 + * @param page + * @throws Exception + */ + @RequestMapping(value="/list") + @RequiresPermissions("mkmjDoor:list") + @ResponseBody + public Object list(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = mkmjRelationService.list(page); //列出Coursectk列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + @RequestMapping(value="/listAllForArea") + @RequiresPermissions("mkmjDoor:list") + @ResponseBody + public Object listAllForArea() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + List varList = mkmjRelationService.listAllForArea(pd); //列出Coursectk列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + /**去修改页面获取数据 + * @param + * @throws Exception + */ + @RequestMapping(value="/goEdit") + @RequiresPermissions("mkmjDoor:edit") + @ResponseBody + public Object goEdit() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = mkmjRelationService.findById(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /**去修改页面获取数据 + * @param + * @throws Exception + */ + @RequestMapping(value="/findById") + @RequiresPermissions("mkmjDoor:edit") + @ResponseBody + public Object findById() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = mkmjRelationService.findById(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /**定位 + * @param + * @throws Exception + */ + @RequestMapping(value="/savePosition") + @ResponseBody + public Object savePosition() throws Exception{ + PageData pd = new PageData(); + pd = this.getPageData(); + return mkmjRelationService.savePosition(pd); //根据ID读取 + } + + /**列表 + * @param page + * @throws Exception + */ + @RequestMapping(value="/getInfoList") + @RequiresPermissions("mkmjDoor:list") + @ResponseBody + public Object getInfoList(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + page.setPd(pd); + List varList = new ArrayList<>(); + varList = mkmjRelationService.getCarAndPeopleInfolistPage(page); //列出人闸机信息列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + @RequestMapping(value="/getAllCarAndPeopleInfoCountByArea") + @ResponseBody + public Object getAllCarAndPeopleInfoCountByArea() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = this.getPageData(); + List varList = mkmjRelationService.getAllCarAndPeopleInfoCountByArea(pd); //列出人闸机信息列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } +} diff --git a/src/main/java/com/zcloud/controller/door/PlatformDoorVideoController.java b/src/main/java/com/zcloud/controller/door/PlatformDoorVideoController.java new file mode 100644 index 00000000..b865d3e5 --- /dev/null +++ b/src/main/java/com/zcloud/controller/door/PlatformDoorVideoController.java @@ -0,0 +1,207 @@ +package com.zcloud.controller.door; + +import com.zcloud.controller.base.BaseController; +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.service.door.PlatformDoorVideoService; +import com.zcloud.util.Tools; +import com.zcloud.util.hk.HKPostApiUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:平台门禁管理 + */ +@Controller +@RequestMapping("/platform/door/video") +public class PlatformDoorVideoController extends BaseController { + @Autowired + private PlatformDoorVideoService platformDoorVideoService; + + private static final String door_host = "192.168.164.50:443"; + // 秘钥appkey + private static final String door_appKey = "24307012"; + // 秘钥appSecret + private static final String door_appSecret = "SLsUPf6WVR4uzu8NPdqq"; + + /**新增 + * @param + * @throws Exception + */ + @RequestMapping(value="/add") + @ResponseBody + public Object add() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("PLATFORMDOORVIDEO_ID", this.get32UUID()); //主键 + platformDoorVideoService.save(pd); + map.put("result", errInfo); + return map; + } + + /**新增 + * @param + * @throws Exception + */ + @RequestMapping(value="/savePosition") + @ResponseBody + public Object savePosition() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + if(pd.get("PLATFORMDOORVIDEO_ID") != null){ + platformDoorVideoService.edit(pd); + }else{ + pd.put("PLATFORMDOORVIDEO_ID", this.get32UUID()); //主键 + platformDoorVideoService.save(pd); + } + + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/getHlsPathById") + @ResponseBody + public Object getHlsPathById() throws Exception{ + Map map = new HashMap(); + PageData pd =this.getPageData(); + pd = platformDoorVideoService.findById(pd); + map = HKPostApiUtil.camerasPreviewURLs(door_host,door_appKey,door_appSecret,pd.getString("INDEXCODE"),"hls"); + map.put("pd",pd); + map.put("result", "success"); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/getHlsPath") + @ResponseBody + public Object getHlsPath() throws Exception{ + Map map = new HashMap(); + PageData pd =this.getPageData(); + map = HKPostApiUtil.camerasPreviewURLs(door_host,door_appKey,door_appSecret,pd.getString("INDEXCODE"),"hls"); + map.put("result", "success"); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/getRtspPath") + @ResponseBody + public Object getRtspPath() throws Exception{ + Map map = new HashMap(); + PageData pd =this.getPageData(); + map = HKPostApiUtil.camerasPreviewURLs(door_host,door_appKey,door_appSecret,pd.getString("INDEXCODE"),"rtsp"); + map.put("result", "success"); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/platformList") + @ResponseBody + public Object platformList() throws Exception{ + Map map = new HashMap(); + PageData pd =this.getPageData(); + map = HKPostApiUtil.cameraSearch(door_host,door_appKey,door_appSecret,pd); + map.put("result", "success"); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + @RequestMapping(value="/list") + @ResponseBody + public Object list(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = platformDoorVideoService.list(page); //列出Platformvideomanagement列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + @RequestMapping(value="/listByPosition") + @ResponseBody + public Object listByPosition(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + double LONGITUDE = Double.parseDouble(pd.getString("LONGITUDE")); + double LATITUDE = Double.parseDouble(pd.getString("LATITUDE")); + pd.put("LONGITUDEONE", String.valueOf(LONGITUDE + 0.05)); + pd.put("LONGITUDETWO", String.valueOf(LONGITUDE - 0.05)); + pd.put("LATITUDEONE", String.valueOf(LATITUDE + 0.05)); + pd.put("LATITUDETWO", String.valueOf(LATITUDE - 0.05)); + page.setPd(pd); + List varList = platformDoorVideoService.listByPosition(page); //列出Platformvideomanagement列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listAll") + @ResponseBody + public Object listAll() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + List varList = new ArrayList<>(); + varList = platformDoorVideoService.listAll(pd); //列出Platformvideomanagement列表 + for (PageData data : varList) { + data.put("MAP_POINT_NAME", data.getString("NAME")); + } + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/delLocation") + @ResponseBody + public Object delLocation() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + platformDoorVideoService.delLocation(pd); + map.put("result", errInfo); + return map; + } +} diff --git a/src/main/java/com/zcloud/controller/map/MapController.java b/src/main/java/com/zcloud/controller/map/MapController.java index 4bfea969..49b30015 100644 --- a/src/main/java/com/zcloud/controller/map/MapController.java +++ b/src/main/java/com/zcloud/controller/map/MapController.java @@ -7,6 +7,10 @@ import com.zcloud.controller.map.testDto.TestDto; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.service.bus.CorpInfoService; +import com.zcloud.service.door.MkmjDeviceService; +import com.zcloud.service.door.MkmjPathService; +import com.zcloud.service.door.MkmjRelationService; +import com.zcloud.service.door.PlatformDoorVideoService; import com.zcloud.service.dw.DwService; import com.zcloud.service.dw.dto.*; import com.zcloud.service.keyProjects.VideoManagerService; @@ -30,6 +34,7 @@ import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.client.RestTemplate; import javax.annotation.Resource; +import java.text.SimpleDateFormat; import java.util.*; /** @@ -81,7 +86,14 @@ public class MapController extends BaseController { private WeatherUtil weatherUtil; @Resource private DwService dwService; - + @Autowired + private MkmjRelationService mkmjRelationService; + @Autowired + private MkmjDeviceService mkmjDeviceService; + @Autowired + private PlatformDoorVideoService platformDoorVideoService; + @Autowired + private MkmjPathService mkmjPathService; @ResponseBody @RequestMapping("/getCorpInfo") public Object getCorpInfo() throws Exception { @@ -745,11 +757,24 @@ public class MapController extends BaseController { */ @RequestMapping("/getGatesInAndOutListById") @ResponseBody - public ReturnMap getGatesInAndOutListById(Page page) { + public ReturnMap getGatesInAndOutListById(Page page) throws Exception { ReturnMap returnMap = new ReturnMap(); PageData pd = this.getPageData(); + pd.put("DOOR_ID", pd.get("GATE_AREA_ID")); page.setPd(pd); - List recordAllList = gateMachineService.getPersonRecordListAllByEId(page); + List recordAllList = Collections.emptyList(); + if (!Tools.isEmpty(pd.getString("CORPINFO_ID"))) { //各公司的二级口门门禁记录 + page.setCurrentPage(1); + page.setShowCount(10); + recordAllList = mkmjPathService.getPeopleInfolistPageByMap(page); //列出人闸机信息列表 + // 车辆进出记录 + List carRecordAllList = mkmjPathService.getCraInfolistPageByMap(page); + returnMap.put("carRecordAllList", carRecordAllList); + }else{ + recordAllList = gateMachineService.getPersonRecordListAllByEId(page); + } + + returnMap.put("recordAllList", recordAllList); return returnMap; } @@ -1168,4 +1193,65 @@ public class MapController extends BaseController { map.put("result", errInfo); return map; } + + /** + * @Description: 闸机位置 + * @Author: dearLin + * @Date: 2023/9/23/023 9:04 + * @Param: + * @Return: + */ + @RequestMapping("/getDoorCount") + @ResponseBody + public ReturnMap getDoorCount() throws Exception { + ReturnMap returnMap = new ReturnMap(); + PageData data = new PageData(); + PageData pageData = this.getPageData(); + //人闸机 + pageData.put("DEVICE_TYPE", 0); + List personMachine = mkmjDeviceService.listAll(pageData); + data.put("personMachineCount", personMachine.size()); + //车闸机 + pageData.put("DEVICE_TYPE", 1); + List carMachine = mkmjDeviceService.listAll(pageData); + data.put("carMachineCount", carMachine.size()); + //摄像头数 + List camera = platformDoorVideoService.listAll(pageData); + data.put("cameraCount", camera.size()); + returnMap.put("data", data); + return returnMap; + } + + /** + * @Description: 闸机位置 + * @Author: dearLin + * @Date: 2023/9/23/023 9:04 + * @Param: + * @Return: + */ + @RequestMapping("/getDoorRecord") + @ResponseBody + public ReturnMap getDoorRecord() { + ReturnMap returnMap = new ReturnMap(); + PageData pageData = this.getPageData(); + List dataList = new ArrayList<>(); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String fendDate = format.format(new Date()); + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.HOUR_OF_DAY, 0); // 将时设置为0 + calendar.set(Calendar.MINUTE, 0); // 将分设置为0 + calendar.set(Calendar.SECOND, 0); // 将秒设置为0 + calendar.set(Calendar.MILLISECOND, 0); // 将毫秒设置为0 + Date currDay = calendar.getTime(); + String fstartDate = format.format(currDay); + if (pageData.get("TYPE").equals("0")) { + pageData.put("eventTime", fstartDate); + dataList = mkmjRelationService.findPersonRecord(pageData); + } else { + pageData.put("CROSSTIME", fstartDate); + dataList = mkmjRelationService.findCarRecord(pageData); + } + returnMap.put("varList", dataList); + return returnMap; + } } diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/DoorAreaMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/DoorAreaMapper.java new file mode 100644 index 00000000..c1669b37 --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/DoorAreaMapper.java @@ -0,0 +1,71 @@ +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface DoorAreaMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + List batchDevicelistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /**. + * 校验名称是否重复 修改时传入数据id + * @param pageData + * @return + */ + PageData findByOnly(PageData pageData); + + List carAndPersonInOutCount(PageData pd); + + List getAllByMap(PageData pageData); +} + diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDeviceMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDeviceMapper.java new file mode 100644 index 00000000..05ec48ce --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDeviceMapper.java @@ -0,0 +1,74 @@ + +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjDeviceMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + List listAllForArea(PageData pd); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /**. + * 校验名称是否重复 修改时传入数据id + * @param pageData + * @return + */ + PageData findByOnly(PageData pageData); + + /** + * 定位 + * @param pd + */ + void savePosition(PageData pd); +} + diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDoorVideoMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDoorVideoMapper.java new file mode 100644 index 00000000..61b5266d --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjDoorVideoMapper.java @@ -0,0 +1,73 @@ +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + + +/** + * 说明:门口门禁闸机摄像头 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjDoorVideoMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /** + * 定位 + * @param pd + */ + void savePosition(PageData pd); + + /**. + * 校验名称是否重复 修改时传入数据id + * @param pageData + * @return + */ + PageData findByOnly(PageData pageData); + + List getRelevanceDoor(PageData pd); +} diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/MkmjPathMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjPathMapper.java new file mode 100644 index 00000000..32a06554 --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjPathMapper.java @@ -0,0 +1,77 @@ +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjPathMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + List getPeopleInfolistPage(Page page); + + List getCarInfolistPage(Page page); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /**. + * 校验名称是否重复 修改时传入数据id + * @param pageData + * @return + */ + PageData findByOnly(PageData pageData); + + /** + * 定位 + * @param pd + */ + void savePosition(PageData pd); + + +} + diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/MkmjRelationMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjRelationMapper.java new file mode 100644 index 00000000..ab8573cd --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/MkmjRelationMapper.java @@ -0,0 +1,81 @@ +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjRelationMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + List listAllForArea(PageData pd); + + List getAllCarAndPeopleInfoCountByArea(PageData pd); + + List getCarAndPeopleInfolistPage(Page page); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /**. + * 校验名称是否重复 修改时传入数据id + * @param pageData + * @return + */ + PageData findByOnly(PageData pageData); + + /** + * 定位 + * @param pd + */ + void savePosition(PageData pd); + + List findPersonRecord(PageData pageData); + + List findCarRecord(PageData pageData); +} + diff --git a/src/main/java/com/zcloud/mapper/dsno2/door/PlatformDoorVideoMapper.java b/src/main/java/com/zcloud/mapper/dsno2/door/PlatformDoorVideoMapper.java new file mode 100644 index 00000000..3393207f --- /dev/null +++ b/src/main/java/com/zcloud/mapper/dsno2/door/PlatformDoorVideoMapper.java @@ -0,0 +1,78 @@ +package com.zcloud.mapper.dsno2.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:平台视频管理 + * 作者:luoxiaobao + * 时间:2023-07-21 + * 官网:www.zcloudchina.com + */ +public interface PlatformDoorVideoMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表 + * @param page + * @throws Exception + */ + List listByPositionlistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**通过indexcode获取数据 + * @param pd + * @throws Exception + */ + PageData findByCode(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + + /**清空坐标 + * @param pd + * @throws Exception + */ + void delLocation(PageData pd); + + +} + diff --git a/src/main/java/com/zcloud/service/door/DoorAreaService.java b/src/main/java/com/zcloud/service/door/DoorAreaService.java new file mode 100644 index 00000000..2389d3f6 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/DoorAreaService.java @@ -0,0 +1,59 @@ +package com.zcloud.service.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface DoorAreaService { + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception; + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception; + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception; + + public List listForDevice(Page page)throws Exception; + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception; + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception; + + public List carAndPersonInOutCount(PageData pd)throws Exception; + + + List getAllByMap(PageData pageData); +} + diff --git a/src/main/java/com/zcloud/service/door/MkmjDeviceService.java b/src/main/java/com/zcloud/service/door/MkmjDeviceService.java new file mode 100644 index 00000000..b6ea4bc3 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/MkmjDeviceService.java @@ -0,0 +1,67 @@ +package com.zcloud.service.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjDeviceService { + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception; + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception; + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception; + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception; + + public List listAllForArea(PageData pd)throws Exception; + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception; + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception; + + /** + * 定位 + * @param pd + * @return + */ + Object savePosition(PageData pd); +} + diff --git a/src/main/java/com/zcloud/service/door/MkmjPathService.java b/src/main/java/com/zcloud/service/door/MkmjPathService.java new file mode 100644 index 00000000..e57c04e5 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/MkmjPathService.java @@ -0,0 +1,74 @@ +package com.zcloud.service.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjPathService { + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception; + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception; + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception; + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception; + + public List getPeopleInfolistPage(Page page)throws Exception; + + public List getCarInfolistPage(Page page)throws Exception; + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception; + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception; + + /** + * 定位 + * @param pd + * @return + */ + Object savePosition(PageData pd); + + + List getPeopleInfolistPageByMap(Page page)throws Exception; + + List getCraInfolistPageByMap(Page page)throws Exception; +} + diff --git a/src/main/java/com/zcloud/service/door/MkmjRelationService.java b/src/main/java/com/zcloud/service/door/MkmjRelationService.java new file mode 100644 index 00000000..4fc0f3d9 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/MkmjRelationService.java @@ -0,0 +1,75 @@ +package com.zcloud.service.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +public interface MkmjRelationService { + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception; + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception; + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception; + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception; + + public List listAllForArea(PageData pd)throws Exception; + + public List getAllCarAndPeopleInfoCountByArea(PageData pd)throws Exception; + + public List getCarAndPeopleInfolistPage(Page page)throws Exception; + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception; + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception; + + /** + * 定位 + * @param pd + * @return + */ + Object savePosition(PageData pd); + + List findPersonRecord(PageData pageData); + + List findCarRecord(PageData pageData); +} + diff --git a/src/main/java/com/zcloud/service/door/PlatformDoorVideoService.java b/src/main/java/com/zcloud/service/door/PlatformDoorVideoService.java new file mode 100644 index 00000000..1bad97d0 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/PlatformDoorVideoService.java @@ -0,0 +1,76 @@ +package com.zcloud.service.door; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:平台视频管理 + * 作者:luoxiaobao + * 时间:2023-07-21 + * 官网:www.zcloudchina.com + */ +public interface PlatformDoorVideoService { + + /**新增 + * @param pd + * @throws Exception + */ + public void save(PageData pd)throws Exception; + + /**删除 + * @param pd + * @throws Exception + */ + public void delete(PageData pd)throws Exception; + + /**修改 + * @param pd + * @throws Exception + */ + public void edit(PageData pd)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception; + + /**列表 + * @param page + * @throws Exception + */ + public List listByPosition(Page page)throws Exception; + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception; + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception; + + /**通过indexcode获取数据 + * @param pd + * @throws Exception + */ + public PageData findByCode(PageData pd)throws Exception; + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public void deleteAll(String[] ArrayDATA_IDS)throws Exception; + + /**清空坐标 + * @param pd + * @throws Exception + */ + void delLocation(PageData pd); +} + diff --git a/src/main/java/com/zcloud/service/door/impl/DoorAreaServiceImpl.java b/src/main/java/com/zcloud/service/door/impl/DoorAreaServiceImpl.java new file mode 100644 index 00000000..73cddc05 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/impl/DoorAreaServiceImpl.java @@ -0,0 +1,162 @@ +package com.zcloud.service.door.impl; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.dsno2.door.DoorAreaMapper; +import com.zcloud.mapper.dsno2.door.MkmjPathMapper; +import com.zcloud.service.door.DoorAreaService; +import com.zcloud.util.UuidUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +@Service +@Transactional //开启事物 +public class DoorAreaServiceImpl implements DoorAreaService { + + @Autowired + private DoorAreaMapper doorAreaMapper; + + @Autowired + private MkmjPathMapper mkmjAreaGateMapper; + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + //保存校验名称不重复 + PageData pageData = doorAreaMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(ObjectUtils.isEmpty(pageData)){ + pd.put("AREA_ID", UuidUtil.get32UUID()); + }else { + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + doorAreaMapper.save(pd); + map.put("result", errInfo); + map.put("msg", "保存成功"); + return map; + } + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + //校验区域下是否存在口门,存在则不让删除 + List gateList = mkmjAreaGateMapper.listAll(pd); + if(gateList.size()>0){ + map.put("result", "fail"); + map.put("msg", "当前区域还存在闸机,请删除当前区域的所有闸机后进行删除"); + return map; + } + //两个校验都不存在 则可以删除 + doorAreaMapper.delete(pd); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pageData = doorAreaMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(!ObjectUtils.isEmpty(pageData)){ + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + doorAreaMapper.edit(pd); + map.put("result", errInfo); + map.put("msg", "编辑成功"); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception{ + return doorAreaMapper.datalistPage(page); + } + + /**列表 + * @param page + * @throws Exception + */ + public List listForDevice(Page page)throws Exception{ + return doorAreaMapper.batchDevicelistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception{ + return doorAreaMapper.listAll(pd); + } + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception{ + return doorAreaMapper.findById(pd); + } + + @Override + public List carAndPersonInOutCount(PageData pd) throws Exception { + return doorAreaMapper.carAndPersonInOutCount(pd); + } + /** + * 方法名称:地图显示本公司的口门信息和坐标信息 + * 方法描述: + * 创建人:guoyuepeng + * 时间:2024/9/5 14:46 + * @param pageData + * @return java.util.List + */ + @Override + public List getAllByMap(PageData pageData) { + List list = doorAreaMapper.getAllByMap(pageData); + List valueList = new ArrayList<>(); + for (PageData pd : list){ //整理成通用List + PageData valueMap = new PageData(); + valueMap.put("GATE_AREA_NAME",pd.getString("DOOR_NAME")); + valueMap.put("LATITUDE",pd.getString("LATITUDE")); + valueMap.put("LONGITUDE",pd.getString("LONGITUDE")); + valueMap.put("GATE_NAME",pd.getString("DOOR_NAME")); + valueMap.put("MAP_POINT_NAME",pd.getString("DOOR_NAME")); + valueMap.put("CORPINFO_ID",pd.getString("CORPINFO_ID")); + valueMap.put("id",pd.getString("DOOR_ID")); + valueList.add(valueMap); + } + return valueList; + } + +} + diff --git a/src/main/java/com/zcloud/service/door/impl/MkmjDeviceServiceImpl.java b/src/main/java/com/zcloud/service/door/impl/MkmjDeviceServiceImpl.java new file mode 100644 index 00000000..a808c93a --- /dev/null +++ b/src/main/java/com/zcloud/service/door/impl/MkmjDeviceServiceImpl.java @@ -0,0 +1,143 @@ + +package com.zcloud.service.door.impl; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.dsno2.door.MkmjDeviceMapper; +import com.zcloud.service.door.MkmjDeviceService; +import com.zcloud.util.UuidUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +@Service +@Transactional //开启事物 +public class MkmjDeviceServiceImpl implements MkmjDeviceService { + + @Autowired + private MkmjDeviceMapper mkmjDeviceMapper; + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + //保存校验名称不重复 + PageData pageData = mkmjDeviceMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(ObjectUtils.isEmpty(pageData)){ + pd.put("DEVICE_ID", UuidUtil.get32UUID()); + }else { + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + mkmjDeviceMapper.save(pd); + map.put("result", errInfo); + map.put("msg", "保存成功"); + return map; + } + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjDeviceMapper.delete(pd); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pageData = mkmjDeviceMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(!ObjectUtils.isEmpty(pageData)){ + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + mkmjDeviceMapper.edit(pd); + map.put("result", errInfo); + map.put("msg", "编辑成功"); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception{ + return mkmjDeviceMapper.datalistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception{ + return mkmjDeviceMapper.listAll(pd); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAllForArea(PageData pd)throws Exception{ + return mkmjDeviceMapper.listAllForArea(pd); + } + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception{ + return mkmjDeviceMapper.findById(pd); + } + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjDeviceMapper.deleteAll(ArrayDATA_IDS); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + @Override + public Object savePosition(PageData pd) { + Map map = new HashMap(); + String errInfo = "success"; + mkmjDeviceMapper.savePosition(pd); + map.put("result", errInfo); + map.put("msg", "定位成功"); + return map; + } + +} + diff --git a/src/main/java/com/zcloud/service/door/impl/MkmjPathServiceImpl.java b/src/main/java/com/zcloud/service/door/impl/MkmjPathServiceImpl.java new file mode 100644 index 00000000..05d4d44f --- /dev/null +++ b/src/main/java/com/zcloud/service/door/impl/MkmjPathServiceImpl.java @@ -0,0 +1,200 @@ +package com.zcloud.service.door.impl; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.dsno2.door.MkmjPathMapper; +import com.zcloud.service.door.MkmjPathService; +import com.zcloud.util.UuidUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +@Service +@Transactional //开启事物 +public class MkmjPathServiceImpl implements MkmjPathService { + + @Autowired + private MkmjPathMapper mkmjPathMapper; + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + //保存校验名称不重复 + PageData pageData = mkmjPathMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(ObjectUtils.isEmpty(pageData)){ + pd.put("PATH_ID", UuidUtil.get32UUID()); + }else { + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + mkmjPathMapper.save(pd); + map.put("result", errInfo); + map.put("msg", "保存成功"); + return map; + } + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjPathMapper.delete(pd); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pageData = mkmjPathMapper.findByOnly(pd); + //查询不到重复数据 开始走业务 + if(!ObjectUtils.isEmpty(pageData)){ + map.put("result", "fail"); + map.put("msg", "名称已存在,请修改后重新提交"); + return map; + } + mkmjPathMapper.edit(pd); + map.put("result", errInfo); + map.put("msg", "编辑成功"); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception{ + return mkmjPathMapper.datalistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception{ + return mkmjPathMapper.listAll(pd); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List getPeopleInfolistPage(Page page)throws Exception{ + return mkmjPathMapper.getPeopleInfolistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List getCarInfolistPage(Page page)throws Exception{ + return mkmjPathMapper.getCarInfolistPage(page); + } + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception{ + return mkmjPathMapper.findById(pd); + } + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjPathMapper.deleteAll(ArrayDATA_IDS); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + @Override + public Object savePosition(PageData pd) { + Map map = new HashMap(); + String errInfo = "success"; + mkmjPathMapper.savePosition(pd); + map.put("result", errInfo); + map.put("msg", "定位成功"); + return map; + } + /** + * 方法名称:地图的记录查询,主要是地图已经写好插件,准备把二级口门门禁的字段写入原来的系统中 + * 方法描述: + * 创建人:guoyuepeng + * 时间:2024/9/5 15:18 + * @param page + * @return java.util.List + */ + @Override + public List getPeopleInfolistPageByMap(Page page) throws Exception { + List peopleInfolistPage = mkmjPathMapper.getPeopleInfolistPage(page); + List valueList = new ArrayList<>(); + for (PageData pageData : peopleInfolistPage){ + PageData valueMap = new PageData(); + valueMap.put("CARDTYPE", pageData.getString("NAME")); + valueMap.put("USERNAME", pageData.getString("NAME")); + valueMap.put("acc_last_update_date", pageData.getString("TIME")); + valueMap.put("TIME", pageData.getString("TIME")); + valueMap.put("COMING_REASON", pageData.getString("BAYNAME")); + valueMap.put("EQUIPMENTNAME", pageData.getString("BAYNAME")); + if("出".equals(pageData.getString("STATUS"))){ + valueMap.put("STATE", "1"); + }else{ + valueMap.put("STATE", "0"); + } + valueList.add(valueMap); + } + return valueList; + } + + @Override + public List getCraInfolistPageByMap(Page page) throws Exception { + + List peopleInfolistPage = mkmjPathMapper.getCarInfolistPage(page); + List valueList = new ArrayList<>(); + for (PageData pageData : peopleInfolistPage){ + PageData valueMap = new PageData(); + valueMap.put("LICENSE_PLATE", pageData.getString("NAME")); + valueMap.put("TIME", pageData.getString("TIME")); + valueMap.put("COMING_REASON", pageData.getString("BAYNAME")); + if("出".equals(pageData.getString("STATUS"))){ + valueMap.put("STATE", "1"); + }else{ + valueMap.put("STATE", "0"); + } + valueList.add(valueMap); + } + return valueList; + } + +} + diff --git a/src/main/java/com/zcloud/service/door/impl/MkmjRelationServiceImpl.java b/src/main/java/com/zcloud/service/door/impl/MkmjRelationServiceImpl.java new file mode 100644 index 00000000..5a400c27 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/impl/MkmjRelationServiceImpl.java @@ -0,0 +1,149 @@ +package com.zcloud.service.door.impl; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.dsno2.door.MkmjRelationMapper; +import com.zcloud.service.door.MkmjRelationService; +import com.zcloud.util.UuidUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:门口门禁区域闸机 + * 作者:zhaoyu + * 时间:2024-01-16 + * 官网:www.zcloudchina.com + */ +@Service +@Transactional //开启事物 +public class MkmjRelationServiceImpl implements MkmjRelationService { + + @Autowired + private MkmjRelationMapper mkmjRelationMapper; + + /**新增 + * @param pd + * @throws Exception + */ + public Object save(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + pd.put("RELATION_ID", UuidUtil.get32UUID()); + mkmjRelationMapper.save(pd); + map.put("result", errInfo); + map.put("msg", "保存成功"); + return map; + } + + /**删除 + * @param pd + * @throws Exception + */ + public Object delete(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjRelationMapper.delete(pd); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + /**修改 + * @param pd + * @throws Exception + */ + public Object edit(PageData pd)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjRelationMapper.edit(pd); + map.put("result", errInfo); + map.put("msg", "编辑成功"); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception{ + return mkmjRelationMapper.datalistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception{ + return mkmjRelationMapper.listAll(pd); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAllForArea(PageData pd)throws Exception{ + return mkmjRelationMapper.listAllForArea(pd); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List getAllCarAndPeopleInfoCountByArea(PageData pd)throws Exception{ + return mkmjRelationMapper.getAllCarAndPeopleInfoCountByArea(pd); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List getCarAndPeopleInfolistPage(Page page)throws Exception{ + return mkmjRelationMapper.getCarAndPeopleInfolistPage(page); + } + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception{ + return mkmjRelationMapper.findById(pd); + } + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public Object deleteAll(String[] ArrayDATA_IDS)throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + mkmjRelationMapper.deleteAll(ArrayDATA_IDS); + map.put("result", errInfo); + map.put("msg", "删除成功"); + return map; + } + + @Override + public Object savePosition(PageData pd) { + Map map = new HashMap(); + String errInfo = "success"; + mkmjRelationMapper.savePosition(pd); + map.put("result", errInfo); + map.put("msg", "定位成功"); + return map; + } + @Override + public List findPersonRecord(PageData pageData){ + return mkmjRelationMapper.findPersonRecord(pageData); + } + @Override + public List findCarRecord(PageData pageData){ + return mkmjRelationMapper.findCarRecord(pageData); + } + +} + diff --git a/src/main/java/com/zcloud/service/door/impl/PlatformDoorVideoServiceImpl.java b/src/main/java/com/zcloud/service/door/impl/PlatformDoorVideoServiceImpl.java new file mode 100644 index 00000000..94466e07 --- /dev/null +++ b/src/main/java/com/zcloud/service/door/impl/PlatformDoorVideoServiceImpl.java @@ -0,0 +1,100 @@ +package com.zcloud.service.door.impl; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.dsno2.door.PlatformDoorVideoMapper; +import com.zcloud.service.door.PlatformDoorVideoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 说明:平台视频管理 + * 作者:luoxiaobao + * 时间:2023-07-21 + * 官网:www.zcloudchina.com + */ +@Service +@Transactional //开启事物 +public class PlatformDoorVideoServiceImpl implements PlatformDoorVideoService { + + @Autowired + private PlatformDoorVideoMapper platformDoorVideoMapper; + + /**新增 + * @param pd + * @throws Exception + */ + public void save(PageData pd)throws Exception{ + platformDoorVideoMapper.save(pd); + } + + /**删除 + * @param pd + * @throws Exception + */ + public void delete(PageData pd)throws Exception{ + platformDoorVideoMapper.delete(pd); + } + + /**修改 + * @param pd + * @throws Exception + */ + public void edit(PageData pd)throws Exception{ + platformDoorVideoMapper.edit(pd); + } + + /**列表 + * @param page + * @throws Exception + */ + public List list(Page page)throws Exception{ + return platformDoorVideoMapper.datalistPage(page); + } + + /**列表 + * @param page + * @throws Exception + */ + public List listByPosition(Page page)throws Exception{ + return platformDoorVideoMapper.listByPositionlistPage(page); + } + + /**列表(全部) + * @param pd + * @throws Exception + */ + public List listAll(PageData pd)throws Exception{ + return platformDoorVideoMapper.listAll(pd); + } + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + public PageData findById(PageData pd)throws Exception{ + return platformDoorVideoMapper.findById(pd); + } + + public PageData findByCode(PageData pd)throws Exception{ + return platformDoorVideoMapper.findByCode(pd); + } + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + public void deleteAll(String[] ArrayDATA_IDS)throws Exception{ + platformDoorVideoMapper.deleteAll(ArrayDATA_IDS); + } + + @Override + public void delLocation(PageData pd) { + platformDoorVideoMapper.delLocation(pd); + } + +} + diff --git a/src/main/java/com/zcloud/service/map/impl/GateMachineServiceImpl.java b/src/main/java/com/zcloud/service/map/impl/GateMachineServiceImpl.java index f864422c..f9dbef2b 100644 --- a/src/main/java/com/zcloud/service/map/impl/GateMachineServiceImpl.java +++ b/src/main/java/com/zcloud/service/map/impl/GateMachineServiceImpl.java @@ -5,9 +5,12 @@ import com.zcloud.entity.PageData; import com.zcloud.mapper.datasource.map.GateAreaMapper; import com.zcloud.mapper.datasource.map.GateMachineMapper; import com.zcloud.mapper.datasource.map.GateVideoMapper; +import com.zcloud.mapper.dsno2.door.MkmjDoorVideoMapper; +import com.zcloud.service.door.DoorAreaService; import com.zcloud.service.keyProjects.VideoManagerService; import com.zcloud.service.map.GateMachineService; import com.zcloud.util.InitPageDataUtil; +import com.zcloud.util.Tools; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -34,8 +37,10 @@ public class GateMachineServiceImpl implements GateMachineService { @Resource private InitPageDataUtil initPageDataUtil; - - + @Resource + private MkmjDoorVideoMapper mkmjDoorVideoMapper; + @Resource + private DoorAreaService doorAreaService; @Override public ArrayList getDatalistpage(Page page) { return gateMachineMapper.getDatalistPage(page); @@ -82,22 +87,41 @@ public class GateMachineServiceImpl implements GateMachineService { @Override public List getGatePosition(PageData pageData) { - // todo 需求变更,现在闸机变成了区域 - if (pageData.getString("TYPE").equals("PERSON")) { - pageData.put("GATE_AREA_TYPE", 0); - // 人闸机定位 - } - if (pageData.getString("TYPE").equals("CAR")) { - // 车闸机定位 - pageData.put("GATE_AREA_TYPE", 1); - } - if (pageData.getString("TYPE").equals("CAMERA")) { - // 摄像头定位 - return gateVideoMapper.getCameraPosition(pageData); - } + if (pageData.getString("CORPINFO_ID").equals("035958e685cf4850bc40151c5e0617a6")) { //一公司的口门门禁系统 + // todo 需求变更,现在闸机变成了区域 + if (pageData.getString("TYPE").equals("PERSON")) { + pageData.put("GATE_AREA_TYPE", 0); + // 人闸机定位 + } - return gateAreaMapper.getGatePosition(pageData); + if (pageData.getString("TYPE").equals("CAR")) { + // 车闸机定位 + pageData.put("GATE_AREA_TYPE", 1); + } + if (pageData.getString("TYPE").equals("CAMERA")) { + // 摄像头定位 + return gateVideoMapper.getCameraPosition(pageData); + } + + return gateAreaMapper.getGatePosition(pageData); + } else if (!Tools.isEmpty(pageData.getString("CORPINFO_ID"))) { //如果有企业信息,就是要显示二级口门门禁系统信息 + if (pageData.getString("TYPE").equals("CAMERA")) { + return mkmjDoorVideoMapper.listAll(pageData); + } + + if (pageData.getString("TYPE").equals("PERSON_MACHINE")) { + pageData.put("DOOR_TYPE", "0"); + // 人闸机定位 + } + + if (pageData.getString("TYPE").equals("CAR_MACHINE")) { + // 车闸机定位 + pageData.put("DOOR_TYPE", 1); + } + return doorAreaService.getAllByMap(pageData); + } + return null; } @Override diff --git a/src/main/java/com/zcloud/util/hk/HKPostApiUtil.java b/src/main/java/com/zcloud/util/hk/HKPostApiUtil.java new file mode 100644 index 00000000..69582eee --- /dev/null +++ b/src/main/java/com/zcloud/util/hk/HKPostApiUtil.java @@ -0,0 +1,268 @@ +package com.zcloud.util.hk; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.hikvision.artemis.sdk.Client; +import com.hikvision.artemis.sdk.Request; +import com.hikvision.artemis.sdk.Response; +import com.hikvision.artemis.sdk.constant.Constants; +import com.hikvision.artemis.sdk.enums.Method; +import com.zcloud.entity.PageData; +import org.apache.commons.lang3.StringUtils; + +import java.util.HashMap; +import java.util.Map; + +/** + * @author fangjiakai + * @date 2023/09/12 10:16 + */ +public class HKPostApiUtil { + /** + * 能力开放平台的网站路径 + * TODO 路径不用修改,就是/artemis + */ + private static final String ARTEMIS_PATH = "/artemis"; + + /** + * 通用海康接口 + * 调用POST请求类型(application/json)接口* + * + * @return + */ + public static Map publicHkInterface(String host, String appKey, String appSecret, JSONObject jsonBody, String url) { + final String getCamsApi = ARTEMIS_PATH + url; + Map path = new HashMap(2); + path.put("https://", getCamsApi); + // post请求application/json类型参数 + String result = doPostStringArtemis(host, appKey, appSecret, path, jsonBody.toJSONString(), null, null, "application/json", null); + JSONObject parseObject = JSONArray.parseObject(result); + return parseObject; + } + + /** + * 获取监控点预览取流URL + * + * @param id 设备编号 + * @return + */ + public static Map camerasPreviewURLs(String host, String appKey, String appSecret, String id, String type) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("cameraIndexCode", id); +// jsonBody.put("netZoneCode", "1"); + jsonBody.put("transmode", 1); + jsonBody.put("streamType", 0); + jsonBody.put("protocol", type); +// jsonBody.put("expireTime", -1); + jsonBody.put("expand", "transcode=1&streamform=rtp"); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/video/v2/cameras/previewURLs"); + return returnMap; + } + + /** + * 获取所有区域数 + * + * @return + */ + public static Map getAllArea(String host, String appKey, String appSecret) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("parentIndexCode", "root000000"); + jsonBody.put("resourceType", "camera"); + jsonBody.put("pageNo", 1); + jsonBody.put("pageSize", 100); + jsonBody.put("cascadeFlag", 0); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/resource/v2/regions/subRegions"); + return returnMap; + } + + /** + * 获取区域内摄像头数 + * + * @return + */ + public static Map getAreaCamera(String host, String appKey, String appSecret, String indexCode) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("regionIndexCode", indexCode); + jsonBody.put("resourceType", "camera"); + jsonBody.put("pageNo", 1); + jsonBody.put("pageSize", 100); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/irds/v2/resource/subResources"); + return returnMap; + } + + /** + * API名称: + * 查询监控点列表v2 + * 分组: + * 视频资源接口 + * 提供方名称: + * 资源目录服务 + * qps: + * 描述:根据条件查询目录下有权限的监控点列表 + * + * @return + */ + public static Map cameraSearch(String host, String appKey, String appSecret, PageData pd) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("pageNo", pd.get("pageNo")); + jsonBody.put("pageSize", pd.get("pageSize")); + if (pd.get("name") != null && !"".equals(pd.getString("name"))) + jsonBody.put("name", pd.get("name")); + jsonBody.put("orderBy", "name"); + jsonBody.put("orderType", "desc"); + jsonBody.put("resourceType", "camera"); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/resource/v2/camera/search"); + return returnMap; + } + + /** + * 订阅事件 + * + * @param ids 事件编号 131588 + * @return + */ + public static Map subscribeEvent(String host, String appKey, String appSecret, String[] ids) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("eventTypes", ids); + jsonBody.put("eventDest", "1"); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/eventService/v1/eventSubscriptionByEventTypes"); + return returnMap; + } + + /** + * API名称: + * 闸机信息获取v2 + * + * @return + */ + public static Map getCarDoorList(String host, String appKey, String appSecret, PageData pd) { + JSONObject jsonBody = new JSONObject(); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/resource/v1/park/parkList"); + return returnMap; + } + + /** + * API名称: + * 闸机信息获取v2 + * + * @return + */ + public static Map getCarDoorInfo(String host, String appKey, String appSecret, String parkIndexCodes) { + JSONObject jsonBody = new JSONObject(); + jsonBody.put("parkIndexCodes", parkIndexCodes); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody, "/api/resource/v1/entrance/entranceList"); + return returnMap; + } + + public static Map getCarPathByDoor(String host, String appKey, String appSecret,String parkIndexCodes){ + JSONObject jsonBody = new JSONObject(); + jsonBody.put("parkIndexCodes",parkIndexCodes); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody,"/api/resource/v1/entrance/entranceList"); + return returnMap; + } + + public static Map getCarDevice(String host, String appKey, String appSecret,String entranceIndexCodes){ + JSONObject jsonBody = new JSONObject(); + jsonBody.put("entranceIndexCodes",entranceIndexCodes); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody,"/api/resource/v1/roadway/roadwayList"); + return returnMap; + } + + /** + * API名称: + * 查询门禁设备列表v2 + * @return + */ + public static Map acsDeviceSearch(String host, String appKey, String appSecret,PageData pd){ + JSONObject jsonBody = new JSONObject(); + jsonBody.put("pageNo", pd.get("pageNo")); + jsonBody.put("pageSize", pd.get("pageSize")); + if(pd.get("name")!=null && !"".equals(pd.getString("name"))) + jsonBody.put("name", pd.get("name")); + jsonBody.put("orderBy", "name"); + jsonBody.put("orderType", "desc"); + Map returnMap=publicHkInterface(host, appKey, appSecret,jsonBody,"/api/resource/v2/acsDevice/search"); + return returnMap; + } + + /** + * API名称: + * 闸机信息获取v2 + * @return + */ + public static Map getGateMachineInfo(String host, String appKey, String appSecret, PageData pd){ + JSONObject jsonBody = new JSONObject(); + jsonBody.put("pageNo", pd.get("pageNo")); + jsonBody.put("pageSize", pd.get("pageSize")); + Map returnMap = publicHkInterface(host, appKey, appSecret, jsonBody,"/api/resource/v2/door/search"); + return returnMap; + } + public static String doPostStringArtemis(String host, String appKey, String appSecret, Map path, String body, Map querys, String accept, String contentType, Map header) { + String httpSchema = (String) path.keySet().toArray()[0]; + if (httpSchema != null && !StringUtils.isEmpty(httpSchema)) { + String responseStr = null; + + try { + Map headers = new HashMap(); + if (StringUtils.isNotBlank(accept)) { + headers.put("Accept", accept); + } else { + headers.put("Accept", "*/*"); + } + + if (StringUtils.isNotBlank(contentType)) { + headers.put("Content-Type", contentType); + } else { + headers.put("Content-Type", "application/text;charset=UTF-8"); + } + + if (header != null) { + headers.putAll(header); + } + + Request request = new Request(Method.POST_STRING, httpSchema + host, (String) path.get(httpSchema), appKey, appSecret, Constants.DEFAULT_TIMEOUT); + request.setHeaders(headers); + request.setQuerys(querys); + request.setStringBody(body); + Response response = Client.execute(request); + responseStr = getResponseResult(response); + } catch (Exception var11) { + var11.printStackTrace(); + } + return responseStr; + } else { + throw new RuntimeException("http和https参数错误httpSchema: " + httpSchema); + } + } + + private static String getResponseResult(Response response) { + String responseStr = null; + int statusCode = response.getStatusCode(); + if (!String.valueOf(statusCode).startsWith("2") && !String.valueOf(statusCode).startsWith("3")) { + String msg = response.getErrorMessage(); + responseStr = response.getBody(); + System.out.println("the Artemis Request is Failed,statusCode:" + statusCode + " errorMsg:" + msg); + } else { + responseStr = response.getBody(); + System.out.println("the Artemis Request is Success,statusCode:" + statusCode + " SuccessMsg:" + response.getBody()); + } + + return responseStr; + } + + public static void main(String[] args) { + String door_host = "192.168.164.50:443"; + String door_appKey = "24307012"; + String door_appSecret = "SLsUPf6WVR4uzu8NPdqq"; + JSONObject jsonBody = new JSONObject(); + jsonBody.put("pageNo", 1); + jsonBody.put("pageSize", 10); +// jsonBody.put("orderBy", "name"); +// jsonBody.put("orderType", "desc"); +// jsonBody.put("resourceType", "region"); +// jsonBody.put("parkIndexCodes","34849cb85867447cbd2f0682aac4379a"); + Map returnMap = publicHkInterface(door_host, door_appKey, door_appSecret, jsonBody, "/api/resource/v2/door/search"); + System.out.println(returnMap); + } + +} diff --git a/src/main/resources/mybatis/dsno2/door/DoorAreaMapper.xml b/src/main/resources/mybatis/dsno2/door/DoorAreaMapper.xml new file mode 100644 index 00000000..faabfdac --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/DoorAreaMapper.xml @@ -0,0 +1,228 @@ + + + + + + + MKMJ_AREA + + + + + SYS_DICTIONARIES + + + + + f.AREA_ID, + f.DEVICE_IDS, + f.AREA_NAME, + f.CORPINFO_ID, + f.CREATOR, + f.CREATTIME, + f.OPERATOR, + f.OPERATTIME, + f.ISDELETE + + + + + AREA_ID, + DEVICE_IDS, + AREA_NAME, + CORPINFO_ID, + CREATOR, + CREATTIME, + OPERATOR, + OPERATTIME, + ISDELETE + + + + + #{AREA_ID}, + #{DEVICE_IDS}, + #{AREA_NAME}, + #{CORPINFO_ID}, + #{CREATOR}, + #{CREATTIME}, + #{OPERATOR}, + #{OPERATTIME}, + #{ISDELETE} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + AREA_ID = #{AREA_ID} + + + + + update + + set + AREA_ID=AREA_ID + + ,AREA_NAME=#{AREA_NAME} + + + ,CORPINFO_ID=#{CORPINFO_ID} + + + ,CREATOR=#{CREATOR} + + + ,CREATTIME=#{CREATTIME} + + + ,OPERATOR=#{OPERATOR} + + + ,OPERATTIME=#{OPERATTIME} + + + ,ISDELETE=#{ISDELETE} + + + ,DEVICE_IDS=#{DEVICE_IDS} + + where + AREA_ID=#{AREA_ID} + + + + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + AREA_ID in + + #{item} + + + + + + + + + + + + diff --git a/src/main/resources/mybatis/dsno2/door/MkmjDeviceMapper.xml b/src/main/resources/mybatis/dsno2/door/MkmjDeviceMapper.xml new file mode 100644 index 00000000..a0045045 --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/MkmjDeviceMapper.xml @@ -0,0 +1,217 @@ + + + + + + + MKMJ_DEVICE + + + + + SYS_DICTIONARIES + + + + + f.DEVICE_ID, + f.DOCK_DEVICE_ID, + f.DOOR_ID, + f.PATH_ID, + f.DEVICE_NAME, + f.DEVICE_TYPE, + f.STATUS, + f.CORPINFO_ID, + f.CREATOR, + f.CREATTIME, + f.OPERATOR, + f.OPERATTIME, + f.ISDELETE + + + + + DEVICE_ID, + DOCK_DEVICE_ID, + DOOR_ID, + PATH_ID, + DEVICE_NAME, + DEVICE_TYPE, + STATUS, + CORPINFO_ID, + CREATOR, + CREATTIME, + OPERATOR, + OPERATTIME, + ISDELETE + + + + + #{DEVICE_ID}, + #{DOCK_DEVICE_ID}, + #{DOOR_ID}, + #{PATH_ID}, + #{DEVICE_NAME}, + #{DEVICE_TYPE}, + #{STATUS}, + #{CORPINFO_ID}, + #{CREATOR}, + #{CREATTIME}, + #{OPERATOR}, + #{OPERATTIME}, + #{ISDELETE} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + DEVICE_ID = #{DEVICE_ID} + + + + + update + + set + DOCK_DEVICE_ID = #{DOCK_DEVICE_ID}, + DOOR_ID = #{DOOR_ID}, + PATH_ID = #{PATH_ID}, + DEVICE_NAME = #{DEVICE_NAME}, + DEVICE_TYPE = #{DEVICE_TYPE}, + STATUS = #{STATUS}, + CORPINFO_ID = #{CORPINFO_ID}, + CREATOR = #{CREATOR}, + CREATTIME = #{CREATTIME}, + OPERATOR = #{OPERATOR}, + OPERATTIME = #{OPERATTIME}, + ISDELETE = #{ISDELETE} + where + DEVICE_ID=#{DEVICE_ID} + + + + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + DEVICE_ID in + + #{item} + + + + + + + + + update + + set + LATITUDE = #{LATITUDE}, + LONGITUDE = #{LONGITUDE} + where + DEVICE_ID = #{DEVICE_ID} + + diff --git a/src/main/resources/mybatis/dsno2/door/MkmjDoorVideoMapper.xml b/src/main/resources/mybatis/dsno2/door/MkmjDoorVideoMapper.xml new file mode 100644 index 00000000..3524087c --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/MkmjDoorVideoMapper.xml @@ -0,0 +1,202 @@ + + + + + + + MKMJ_DOOR_VIDEO + + + + + SYS_DICTIONARIES + + + + + f.DOOR_VIDEO_ID, + f.DOOR_ID, + f.PLATFORMVIDEOMANAGEMENT_ID, + f.LONGITUDE, + f.LATITUDE, + f.CORPINFO_ID, + f.CREATOR, + f.CREATTIME, + f.OPERATOR, + f.OPERATTIME, + f.ISDELETE + + + + + DOOR_VIDEO_ID, + DOOR_ID, + PLATFORMVIDEOMANAGEMENT_ID, + LONGITUDE, + LATITUDE, + CORPINFO_ID, + CREATOR, + CREATTIME, + OPERATOR, + OPERATTIME, + ISDELETE + + + + + #{DOOR_VIDEO_ID}, + #{DOOR_ID}, + #{PLATFORMVIDEOMANAGEMENT_ID}, + #{LONGITUDE}, + #{LATITUDE}, + #{CORPINFO_ID}, + #{CREATOR}, + #{CREATTIME}, + #{OPERATOR}, + #{OPERATTIME}, + #{ISDELETE} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + DOOR_VIDEO_ID = #{DOOR_VIDEO_ID} + + + + + update + + set + DOOR_VIDEO_ID= DOOR_VIDEO_ID, + DOOR_ID=#{DOOR_ID}, + PLATFORMVIDEOMANAGEMENT_ID=#{PLATFORMVIDEOMANAGEMENT_ID}, + LONGITUDE=#{LONGITUDE}, + LATITUDE=#{LATITUDE}, + CORPINFO_ID=#{CORPINFO_ID}, + CREATOR=#{CREATOR}, + CREATTIME=#{CREATTIME}, + OPERATOR=#{OPERATOR}, + OPERATTIME=#{OPERATTIME}, + ISDELETE=#{ISDELETE} + where + DOOR_VIDEO_ID=#{DOOR_VIDEO_ID} + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + DOOR_VIDEO_ID in + + #{item} + + + + + + update + + set + LATITUDE = #{LATITUDE}, + LONGITUDE = #{LONGITUDE} + where + DOOR_VIDEO_ID = #{DOOR_VIDEO_ID} + + + + + + + + + diff --git a/src/main/resources/mybatis/dsno2/door/MkmjPathMapper.xml b/src/main/resources/mybatis/dsno2/door/MkmjPathMapper.xml new file mode 100644 index 00000000..3c451a42 --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/MkmjPathMapper.xml @@ -0,0 +1,244 @@ + + + + + + + MKMJ_PATH + + + + + SYS_DICTIONARIES + + + + + f.PATH_ID, + f.DOOR_ID, + f.PATH_NAME, + f.PATH_TYPE, + f.STATUS, + f.CORPINFO_ID, + f.CREATOR, + f.CREATTIME, + f.OPERATOR, + f.OPERATTIME, + f.ISDELETE + + + + + PATH_ID, + DOOR_ID, + PATH_NAME, + PATH_TYPE, + STATUS, + CORPINFO_ID, + CREATOR, + CREATTIME, + OPERATOR, + OPERATTIME, + ISDELETE + + + + + #{PATH_ID}, + #{DOOR_ID}, + #{PATH_NAME}, + #{PATH_TYPE}, + #{STATUS}, + #{CORPINFO_ID}, + #{CREATOR}, + #{CREATTIME}, + #{OPERATOR}, + #{OPERATTIME}, + #{ISDELETE} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + PATH_ID = #{PATH_ID} + + + + + update + + set + DOOR_ID = #{DOOR_ID}, + PATH_NAME = #{PATH_NAME}, + PATH_TYPE = #{PATH_TYPE}, + STATUS = #{STATUS}, + CORPINFO_ID = #{CORPINFO_ID}, + CREATOR = #{CREATOR}, + CREATTIME = #{CREATTIME}, + OPERATOR = #{OPERATOR}, + OPERATTIME = #{OPERATTIME}, + ISDELETE = #{ISDELETE} + where + PATH_ID=#{PATH_ID} + + + + + + + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + PATH_ID in + + #{item} + + + + + + + + + update + + set + LATITUDE = #{LATITUDE}, + LONGITUDE = #{LONGITUDE} + where + PATH_ID = #{PATH_ID} + + diff --git a/src/main/resources/mybatis/dsno2/door/MkmjRelationMapper.xml b/src/main/resources/mybatis/dsno2/door/MkmjRelationMapper.xml new file mode 100644 index 00000000..bfe7984f --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/MkmjRelationMapper.xml @@ -0,0 +1,325 @@ + + + + + + + MKMJ_RELATION + + + + + SYS_DICTIONARIES + + + + + f.RELATION_ID, + f.AREA_ID, + f.DEVICE_ID, + f.TYPE, + f.CORPINFO_ID, + f.CREATOR, + f.CREATTIME, + f.OPERATOR, + f.OPERATTIME, + f.ISDELETE + + + + + RELATION_ID, + AREA_ID, + DEVICE_ID, + TYPE, + CORPINFO_ID, + CREATOR, + CREATTIME, + OPERATOR, + OPERATTIME, + ISDELETE + + + + + #{RELATION_ID}, + #{AREA_ID}, + #{DEVICE_ID}, + #{TYPE}, + #{CORPINFO_ID}, + #{CREATOR}, + #{CREATTIME}, + #{OPERATOR}, + #{OPERATTIME}, + #{ISDELETE} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + RELATION_ID = #{RELATION_ID} + + + + + update + + set + RELATION_ID = RELATION_ID, + AREA_ID = #{AREA_ID}, + DEVICE_ID = #{DEVICE_ID}, + TYPE = #{TYPE}, + CORPINFO_ID = #{CORPINFO_ID}, + CREATOR = #{CREATOR}, + CREATTIME = #{CREATTIME}, + OPERATOR = #{OPERATOR}, + OPERATTIME = #{OPERATTIME}, + ISDELETE = #{ISDELETE} + where + RELATION_ID=#{RELATION_ID} + + + + + + + + + + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + DEVICE_ID in + + #{item} + + + + + + + + diff --git a/src/main/resources/mybatis/dsno2/door/PlatformDoorVideoMapper.xml b/src/main/resources/mybatis/dsno2/door/PlatformDoorVideoMapper.xml new file mode 100644 index 00000000..24868a8d --- /dev/null +++ b/src/main/resources/mybatis/dsno2/door/PlatformDoorVideoMapper.xml @@ -0,0 +1,236 @@ + + + + + + + BUS_PLATFORM_DOOR_VIDEO + + + + + SYS_DICTIONARIES + + + + + f.CORPINFO_ID, + f.INDEXCODE, + f.REGIONINDEXCODE, + f.EXTERNALINDEXCODE, + f.NAME, + f.LONGITUDE, + f.LATITUDE, + f.CAMERATYPE, + f.CASCADECODE, + f.DECODETAG, + f.RESOURCETYPE, + f.CREATETIME, + f.UPDATETIME, + f.SORT, + f.DISORDER, + f.RECORDLOCATION, + f.CASCADETYPE, + f.REGIONNAME, + f.REGIONPATH, + f.REGIONPATHNAME, + f.PLATFORMDOORVIDEO_ID + + + + + CORPINFO_ID, + INDEXCODE, + REGIONINDEXCODE, + EXTERNALINDEXCODE, + NAME, + LONGITUDE, + LATITUDE, + CAMERATYPE, + CASCADECODE, + DECODETAG, + RESOURCETYPE, + CREATETIME, + UPDATETIME, + SORT, + DISORDER, + RECORDLOCATION, + CASCADETYPE, + REGIONNAME, + REGIONPATH, + REGIONPATHNAME, + PLATFORMDOORVIDEO_ID + + + + + #{CORPINFO_ID}, + #{INDEXCODE}, + #{REGIONINDEXCODE}, + #{EXTERNALINDEXCODE}, + #{NAME}, + #{LONGITUDE}, + #{LATITUDE}, + #{CAMERATYPE}, + #{CASCADECODE}, + #{DECODETAG}, + #{RESOURCETYPE}, + #{CREATETIME}, + #{UPDATETIME}, + #{SORT}, + #{DISORDER}, + #{RECORDLOCATION}, + #{CASCADETYPE}, + #{REGIONNAME}, + #{REGIONPATH}, + #{REGIONPATHNAME}, + #{PLATFORMDOORVIDEO_ID} + + + + + insert into + + ( + + ) values ( + + ) + + + + + update + + set + ISDELETE = '1' + where + PLATFORMDOORVIDEO_ID = #{PLATFORMDOORVIDEO_ID} + + + + + update + + set + CORPINFO_ID = #{CORPINFO_ID}, + INDEXCODE = #{INDEXCODE}, + REGIONINDEXCODE = #{REGIONINDEXCODE}, + EXTERNALINDEXCODE = #{EXTERNALINDEXCODE}, + NAME = #{NAME}, + LONGITUDE = #{LONGITUDE}, + LATITUDE = #{LATITUDE}, + CAMERATYPE = #{CAMERATYPE}, + CASCADECODE = #{CASCADECODE}, + DECODETAG = #{DECODETAG}, + RESOURCETYPE = #{RESOURCETYPE}, + CREATETIME = #{CREATETIME}, + UPDATETIME = #{UPDATETIME}, + SORT = #{SORT}, + DISORDER = #{DISORDER}, + RECORDLOCATION = #{RECORDLOCATION}, + CASCADETYPE = #{CASCADETYPE}, + REGIONNAME = #{REGIONNAME}, + REGIONPATH = #{REGIONPATH}, + REGIONPATHNAME = #{REGIONPATHNAME}, + PLATFORMDOORVIDEO_ID = PLATFORMDOORVIDEO_ID + where + PLATFORMDOORVIDEO_ID = #{PLATFORMDOORVIDEO_ID} + + + + + + + + + + + + + + + + + + + update + + set + ISDELETE = '1' + where + PLATFORMDOORVIDEO_ID in + + #{item} + + + + + + + update + + set + LONGITUDE = null, + LATITUDE = null, + CORPINFO_ID = null + where + PLATFORMDOORVIDEO_ID = #{PLATFORMDOORVIDEO_ID} + +