Commit 2c8afda2 authored by 赵啸非's avatar 赵啸非

地图详细显示

parent 2418c3c5
...@@ -229,10 +229,7 @@ export default { ...@@ -229,10 +229,7 @@ export default {
//初始化查询表单 //初始化查询表单
let newFormData = {}; let newFormData = {};
// this.form = this.encode(data, this.form); // this.form = this.encode(data, this.form);
console.log("data", data);
console.log("form", this.form);
this.search.forEach((item) => { this.search.forEach((item) => {
console.log("search-item", item);
//复选框 //复选框
if (item.type === "checkbox") { if (item.type === "checkbox") {
if (this.form[item.name] == undefined) { if (this.form[item.name] == undefined) {
...@@ -257,8 +254,6 @@ export default { ...@@ -257,8 +254,6 @@ export default {
}); });
this.form = Object.assign({}, this.form, newFormData); this.form = Object.assign({}, this.form, newFormData);
this.form = Object.assign({}, this.form, data); this.form = Object.assign({}, this.form, data);
console.log("form2", this.form);
}, },
cleanForm() { cleanForm() {
this.clean(); this.clean();
......
...@@ -51,6 +51,7 @@ ...@@ -51,6 +51,7 @@
title: "设备", title: "设备",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction:"rtl",
toString:[ toString:[
"deviceType", "deviceType",
"deviceOnlineStatus", "deviceOnlineStatus",
......
...@@ -19,36 +19,104 @@ ...@@ -19,36 +19,104 @@
<div class="footer"> <div class="footer">
登陆 &copy; <a href="">信宏翔网络科技有限公司</a> 出品 登陆 &copy; <a href="">信宏翔网络科技有限公司</a> 出品
</div> </div>
<!-- <Map ref="map1" :markersData="originData" @choose="getDetailData" /> -->
<!-- <el-card :body-style="{ padding: '5px' }" style="width: 300px">
<el-row type="flex" class="row-bg" justify="space-around">
<span style="font-size: 18px"><b>高新区政务服务中心</b></span>
<el-button type="text" size="mini" class="button">查看详情</el-button>
</el-row>
<el-divider></el-divider>
<el-row type="flex" justify="space-around">
<el-col :span="4">
<span style="font-size: 13px"><b>100</b></span
><br />
<span style="font-size: 12px">设备总数</span>
</el-col>
<el-col :span="4">
<span style="font-size: 13px"><b>100</b></span
><br />
<span style="font-size: 12px">在线</span>
</el-col>
<el-col :span="4">
<span style="font-size: 13px"><b>100</b></span
><br />
<span style="font-size: 12px">离线</span>
</el-col>
<el-col :span="4">
<span style="font-size: 13px"><b>100</b></span
><br />
<span style="font-size: 12px">停用</span>
</el-col>
<el-col :span="4">
<span style="font-size: 13px"><b>100</b></span
><br />
<span style="font-size: 12px">待激活</span>
</el-col>
</el-row>
<el-divider></el-divider>
<el-descriptions :column="1" size="small">
<el-descriptions-item label="站点编码"
>kooriookami</el-descriptions-item
>
<el-descriptions-item label="站点地址"
>18100000000</el-descriptions-item
>
<el-descriptions-item
label="联系人"
:labelStyle="{ 'text-align': 'right', width: '50px' }"
>苏州市</el-descriptions-item
>
<el-descriptions-item label="联系电话">
<el-tag size="small">学校</el-tag>
</el-descriptions-item>
<el-descriptions-item label="创建时间"
>江苏省苏州市吴中区吴中大道 1188 号</el-descriptions-item
>
</el-descriptions>
</el-card> -->
</div> </div>
</template> </template>
<script> <script>
import { createSocket } from "@/assets/utils/websocket";
import { createSocket } from '@/assets/utils/websocket'
export default { export default {
name: 'login', name: "login",
created() { created() {
// window.location.href=process.env.VUE_APP_PORTAL_URL=='undefined'?'http://192.168.0.98:11072':process.env.VUE_APP_PORTAL_URL // let obj = {};
// obj.lng = 104.21;
// obj.lat = 30.56;
// obj.address = "测试站点";
// obj.siteId = 2;
// this.originData.push(obj);
// this.$nextTick(() => {
// this.$refs.map1.refresh(this.originData);
// });
// window.location.href=process.env.VUE_APP_PORTAL_URL=='undefined'?'http://192.168.0.98:11072':process.env.VUE_APP_PORTAL_URL
}, },
methods: { methods: {
login() { login() {
this.loading = true; this.loading = true;
this.$post('/login/login', this.form).then(this.loginSuccess).catch(this.loginFail) this.$post("/login/login", this.form)
.then(this.loginSuccess)
.catch(this.loginFail);
}, },
loginSuccess({data}) { loginSuccess({ data }) {
console.log("userData",data) console.log("userData", data);
this.$store.commit('setUserData', data); this.$store.commit("setUserData", data);
this.$router.replace({ this.$router.replace({
path: this.redirect, path: this.redirect,
}); });
//成功 创建websocket连接 process.env.VUE_WEBSOCKET_BASE_API + //成功 创建websocket连接 process.env.VUE_WEBSOCKET_BASE_API +
console.log("process",process.env) console.log("process", process.env);
// createSocket("ws://"+process.env.VUE_APP_BASE_API +"/ws?accessToken="+data.id) // createSocket("ws://"+process.env.VUE_APP_BASE_API +"/ws?accessToken="+data.id)
}, },
loginFail(error) { loginFail(error) {
this.loading = false; this.loading = false;
...@@ -62,11 +130,11 @@ export default { ...@@ -62,11 +130,11 @@ export default {
onSubmit(e) { onSubmit(e) {
e.preventDefault(); e.preventDefault();
if(!this.form.loginName.length){ if (!this.form.loginName.length) {
return this.$message.warning('请输入用户名') return this.$message.warning("请输入用户名");
} }
if(!this.form.password.length){ if (!this.form.password.length) {
return this.$message.warning('请输入密码') return this.$message.warning("请输入密码");
} }
this.login(); this.login();
...@@ -74,50 +142,56 @@ export default { ...@@ -74,50 +142,56 @@ export default {
}, },
data() { data() {
return { return {
originData: [],
loading: false, loading: false,
redirect: this.$route.query.redirect || '/', redirect: this.$route.query.redirect || "/",
form: { form: {
loginName: '', loginName: "",
password: '' password: "",
} },
} };
} },
} };
</script> </script>
<style lang="less"> <style lang="less">
.el-divider--horizontal {
margin: 5px 0;
background: 0 0;
border-top: 2px solid #e8eaec;
}
.page-login { .page-login {
background-image: linear-gradient(45deg, #333, #111); background-image: linear-gradient(45deg, #333, #111);
background-size: 40px 40px; background-size: 40px 40px;
margin: 0; margin: 0;
height: 100%; height: 100%;
.el-form{ .el-form {
margin: auto; margin: auto;
width: 400px; width: 400px;
padding: 25px 25px 0 0; padding: 25px 25px 0 0;
background: #fff; background: #fff;
h1{ h1 {
text-align: center; text-align: center;
font-size: 20px; font-size: 20px;
font-weight: 500; font-weight: 500;
margin-bottom: 20px; margin-bottom: 20px;
} }
button{ button {
margin-top: 10px; margin-top: 10px;
width: 240px; width: 240px;
} }
.el-input-group__append{ .el-input-group__append {
padding: 0; padding: 0;
font-size: 0; font-size: 0;
} }
} }
.footer{ .footer {
height: 80px; height: 80px;
font-size: 12px; font-size: 12px;
color: #999; color: #999;
text-align: center; text-align: center;
line-height: 80px; line-height: 80px;
a{ a {
color: #999; color: #999;
} }
} }
......
...@@ -40,7 +40,6 @@ ...@@ -40,7 +40,6 @@
</el-row> </el-row>
<dialog-show ref="dialogform" @ok="getData" /> <dialog-show ref="dialogform" @ok="getData" />
</div> </div>
</template> </template>
...@@ -64,14 +63,15 @@ export default { ...@@ -64,14 +63,15 @@ export default {
created() { created() {
this.pageInfo.list = "/sitestat/list"; this.pageInfo.list = "/sitestat/list";
this.$get("/sitestat/maplist", {}).then(({ data }) => { this.$get("/sitestat/maplist", {}).then(({ data }) => {
this.originData = data.data.map((i) => { this.originData=data
let obj = {}; // this.originData = data.data.map((i) => {
obj.lng = i.longitude; // let obj = {};
obj.lat = i.latitude; // obj.lng = i.longitude;
obj.address = i.siteName; // obj.lat = i.latitude;
obj.siteId = i.id; // obj.address = i.siteName;
return obj; // obj.siteId = i.id;
}); // return obj;
// });
this.$refs.map.refresh(this.originData); this.$refs.map.refresh(this.originData);
}); });
...@@ -107,14 +107,24 @@ export default { ...@@ -107,14 +107,24 @@ export default {
this.isExport = false; this.isExport = false;
this.$message.error(error.message); this.$message.error(error.message);
}); });
}, },
getDetailData(siteId) { getDetailData(siteId, callback) {
// console.log("111"); console.log("siteId:", siteId);
this.$get("/sitestat/siteInfo", { siteId, siteId }).then((res) => {
console.log("res",res)
// if (res.code == 1 && res.data.data.length > 0) {
// callback(res.data.data[0]);
// }
});
//关闭弹窗 //关闭弹窗
// this.$refs.popoverRef.doClose() // this.$refs.popoverRef.doClose()
//this.$refs.popoverRef.doShow() //开启弹窗 //this.$refs.popoverRef.doShow() //开启弹窗
}, },
/** 重写新增方法 */ /** 重写新增方法 */
......
package com.mortals.xhx.module.device.model.vo; package com.mortals.xhx.module.device.model.vo;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.device.model.DeviceStatEntity; import com.mortals.xhx.module.device.model.DeviceStatEntity;
import lombok.Data;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 设备统计视图对象 * 设备统计视图对象
* *
* @author zxfei * @author zxfei
* @date 2022-07-05 * @date 2022-07-05
*/ */
@Data
public class DeviceStatVo extends BaseEntityLong { public class DeviceStatVo extends BaseEntityLong {
} }
\ No newline at end of file
package com.mortals.xhx.module.device.service; package com.mortals.xhx.module.device.service;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.feign.site.ISiteFeign;
import com.mortals.xhx.module.device.model.DeviceStatEntity; import com.mortals.xhx.module.device.model.DeviceStatEntity;
import org.springframework.beans.factory.annotation.Autowired;
/** /**
* DeviceStatService * DeviceStatService
* *
...@@ -11,4 +14,6 @@ import com.mortals.xhx.module.device.model.DeviceStatEntity; ...@@ -11,4 +14,6 @@ import com.mortals.xhx.module.device.model.DeviceStatEntity;
*/ */
public interface DeviceStatService extends ICRUDService<DeviceStatEntity,Long>{ public interface DeviceStatService extends ICRUDService<DeviceStatEntity,Long>{
} }
\ No newline at end of file
package com.mortals.xhx.module.device.service.impl; package com.mortals.xhx.module.device.service.impl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.common.pdu.site.SitePdu;
import com.mortals.xhx.feign.site.ISiteFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.module.device.dao.DeviceStatDao; import com.mortals.xhx.module.device.dao.DeviceStatDao;
import com.mortals.xhx.module.device.model.DeviceStatEntity; import com.mortals.xhx.module.device.model.DeviceStatEntity;
import com.mortals.xhx.module.device.service.DeviceStatService; import com.mortals.xhx.module.device.service.DeviceStatService;
import org.springframework.util.ObjectUtils;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* DeviceStatService * DeviceStatService
* 设备统计 service实现 * 设备统计 service实现
...@@ -13,5 +25,23 @@ import com.mortals.xhx.module.device.service.DeviceStatService; ...@@ -13,5 +25,23 @@ import com.mortals.xhx.module.device.service.DeviceStatService;
*/ */
@Service("deviceStatService") @Service("deviceStatService")
public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao, DeviceStatEntity, Long> implements DeviceStatService { public class DeviceStatServiceImpl extends AbstractCRUDServiceImpl<DeviceStatDao, DeviceStatEntity, Long> implements DeviceStatService {
// @Autowired
// private ISiteFeign siteFeign;
//
//
// @Override
// protected void findAfter(DeviceStatEntity params, PageInfo pageInfo, Context context, List<DeviceStatEntity> list) throws AppException {
// SitePdu sitePdu = new SitePdu();
// sitePdu.setSize(-1);
// Map<Long, SitePdu> collect = siteFeign.list(sitePdu).getData().getData().stream().collect(Collectors.toMap(x -> x.getId(), y -> y));
//
// list.stream().forEach(item->{
// if(ObjectUtils.isEmpty())
// });
//
//
//
// super.findAfter(params, pageInfo, context, list);
// }
} }
\ No newline at end of file
package com.mortals.xhx.module.sitestat.model; package com.mortals.xhx.module.sitestat.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.sitestat.model.vo.SitestatVo; import com.mortals.xhx.module.sitestat.model.vo.SitestatVo;
/** /**
* 站点统计实体对象 * 站点统计实体对象
......
...@@ -19,4 +19,15 @@ public class SitestatVo extends BaseEntityLong { ...@@ -19,4 +19,15 @@ public class SitestatVo extends BaseEntityLong {
* 站点Id,来源基础服务平台列表 * 站点Id,来源基础服务平台列表
*/ */
private List<Long> siteIdList; private List<Long> siteIdList;
private String lng;
private String lat;
private String address;
private String leadingOfficial;
private String leadingOfficialTelephone;
} }
\ No newline at end of file
...@@ -20,6 +20,7 @@ import com.mortals.xhx.module.sitestat.model.SitestatQuery; ...@@ -20,6 +20,7 @@ import com.mortals.xhx.module.sitestat.model.SitestatQuery;
import com.mortals.xhx.module.sitestat.service.SitestatService; import com.mortals.xhx.module.sitestat.service.SitestatService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -28,6 +29,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -28,6 +29,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* 站点统计 * 站点统计
...@@ -108,9 +110,8 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest ...@@ -108,9 +110,8 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest
* 站点列表 * 站点列表
*/ */
@GetMapping(value = "maplist") @GetMapping(value = "maplist")
public String maplist() { public Rest<List<SitestatEntity>> maplist() {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
String busiDesc = this.getModuleDesc() + "构建站点列表";
try { try {
SitePdu sitePdu = new SitePdu(); SitePdu sitePdu = new SitePdu();
sitePdu.setPage(1); sitePdu.setPage(1);
...@@ -120,13 +121,29 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest ...@@ -120,13 +121,29 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest
sitePdu.setIdList(siteIdList); sitePdu.setIdList(siteIdList);
} }
Rest<RespData<List<SitePdu>>> resp = siteFeign.list(sitePdu); Rest<RespData<List<SitePdu>>> resp = siteFeign.list(sitePdu);
return JSON.toJSONString(resp);
//根据站点id 获取统计信息
List<SitestatEntity> collect = resp.getData().getData().stream().map(item -> {
SitestatEntity sitestatEntity = this.service.selectOne(new SitestatQuery().siteId(item.getId()));
if (!ObjectUtils.isEmpty(sitestatEntity)) {
sitestatEntity.setSiteId(item.getId());
sitestatEntity.setSiteCode(item.getSiteCode());
sitestatEntity.setSiteName(item.getSiteName());
sitestatEntity.setLng(item.getLongitude());
sitestatEntity.setLat(item.getLatitude());
sitestatEntity.setAddress(item.getDetailAddress());
sitestatEntity.setLeadingOfficial(item.getLeadingOfficial());
sitestatEntity.setLeadingOfficialTelephone(item.getLeadingOfficialTelephone());
return sitestatEntity;
}
return null;
}).filter(f -> f != null).collect(Collectors.toList());
return Rest.ok("获取成功", collect);
} catch (Exception e) { } catch (Exception e) {
log.error("站点异常", e); log.error("获取异常", e);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE); return Rest.fail("获取异常!");
jsonObject.put(KEY_RESULT_MSG, super.convertException(e));
} }
return jsonObject.toJSONString();
} }
...@@ -154,6 +171,4 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest ...@@ -154,6 +171,4 @@ public class SitestatController extends BaseCRUDJsonBodyMappingController<Sitest
} }
} }
\ No newline at end of file
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