From af0aaf0fe19dc69369ee2f7e5ca001c24353a22e Mon Sep 17 00:00:00 2001
From: liuyg <liuyg@qq.com>
Date: Wed, 16 Feb 2022 17:22:52 +0800
Subject: [PATCH] 冲突
---
src/views/map/carGps.vue | 234 --
src/views/regulatoryInformation/data.js | 45
src/views/securityCompany/security.vue | 5
src/views/securityCompany/armed.vue | 5
src/api/securityCompany/companyDetails.js | 146
src/views/securityGuardManagement/dispatchChildoperable copy.vue | 6
src/views/statisticalQueryManagement/securityGuardDetail.vue | 2
src/views/securityCompany/companyDetails copy.vue | 752 +++++++
src/views/statisticalQueryManagement/informationLoginStatistics.vue | 275 ++
src/views/loginRecord/loginRecord.vue | 192 +
src/styles/map.scss | 2
src/api/qualificationExamination/signQualificationExamination.js | 12
src/views/home/index.scss | 11
src/views/securityCompany/computents/service.vue | 4
src/views/securityGuardManagement/register.vue | 43
src/views/map/peopleGps.vue | 100
src/views/qualificationExamination/data.js | 45
public/geo.js | 153 +
src/views/talk/talk.vue | 1
src/components/map/main.vue | 2
src/api/map/gun.js | 10
src/api/loginRecord/loginRecord.js | 25
src/api/map/car.js | 4
src/views/securityCompany/companyDetails.vue | 1797 +++++++++++------
src/views/securityCompany/train.vue | 5
src/views/qualificationExamination/scoreInquiry.vue | 178 -
src/views/qualificationExamination/registrationTrainingQuery.vue | 2
src/api/system/user.js | 8
src/api/map/people.js | 12
public/index.html | 3
src/views/map/gunGps.vue | 689 +++---
src/views/statisticalQueryManagement/businessStatisticsFwdq.vue | 2
src/views/map/carGps1.vue | 227 ++
src/page/index/logo.vue | 64
src/api/securityCompany/security.js | 144
src/views/home/index.vue | 373 ++-
public/scoket.html | 60
src/views/onSiteInspection/data.js | 45
src/api/index/index.js | 34
src/views/onSiteInspection/company.vue | 27
src/views/securityCompany/data.js | 45
src/views/securityGuardManagement/registerOnce.vue | 15
src/views/statisticalQueryManagement/companyDetails.vue | 2
src/page/index/top/index.vue | 8
src/views/home/indexEchart.js | 52
src/views/securityCompany/computents/equipment.vue | 4
src/views/statisticalQueryManagement/businessStatisticsDetail.vue | 10
src/views/onSiteInspection/securityStaff.vue | 26
48 files changed, 3,910 insertions(+), 1,996 deletions(-)
diff --git a/public/geo.js b/public/geo.js
new file mode 100644
index 0000000..9dfd1d7
--- /dev/null
+++ b/public/geo.js
@@ -0,0 +1,153 @@
+/**
+ * Created by Wandergis on 2015/7/8.
+ * 提供了百度坐标(BD-09)、国测局坐标(火星坐标,GCJ-02)、和 WGS-84 坐标系之间的转换
+ */
+// UMD 魔法代码
+// if the module has no dependencies, the above pattern can be simplified to
+(function (root, factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as an anonymous module.
+ define([], factory);
+ } else if (typeof module === 'object' && module.exports) {
+ // Node. Does not work with strict CommonJS, but
+ // only CommonJS-like environments that support module.exports,
+ // like Node.
+ module.exports = factory();
+ } else {
+ // Browser globals (root is window)
+ root.coordtransform = factory();
+ }
+}(this, function () {
+ // 定义一些常量
+ var x_PI = 3.14159265358979324 * 3000.0 / 180.0;
+ var PI = 3.1415926535897932384626;
+ var a = 6378245.0;
+ var ee = 0.00669342162296594323;
+ /**
+ * 百度坐标系 (BD-09) 与 火星坐标系 (GCJ-02) 的转换
+ * 即 百度 转 谷歌、高德
+ * @param bd_lng
+ * @param bd_lat
+ * @returns {*[]}
+ */
+ var bd09togcj02 = function bd09togcj02(bd_lng, bd_lat) {
+ var bd_lng = +bd_lng;
+ var bd_lat = +bd_lat;
+ var x = bd_lng - 0.0065;
+ var y = bd_lat - 0.006;
+ var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_PI);
+ var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_PI);
+ var gg_lng = z * Math.cos(theta);
+ var gg_lat = z * Math.sin(theta);
+ return [gg_lng, gg_lat]
+ };
+
+ /**
+ * 火星坐标系 (GCJ-02) 与百度坐标系 (BD-09) 的转换
+ * 即 谷歌、高德 转 百度
+ * @param lng
+ * @param lat
+ * @returns {*[]}
+ */
+ var gcj02tobd09 = function gcj02tobd09(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ var z = Math.sqrt(lng * lng + lat * lat) + 0.00002 * Math.sin(lat * x_PI);
+ var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * x_PI);
+ var bd_lng = z * Math.cos(theta) + 0.0065;
+ var bd_lat = z * Math.sin(theta) + 0.006;
+ return [bd_lng, bd_lat]
+ };
+
+ /**
+ * WGS-84 转 GCJ-02
+ * @param lng
+ * @param lat
+ * @returns {*[]}
+ */
+ var wgs84togcj02 = function wgs84togcj02(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ if (out_of_china(lng, lat)) {
+ return [lng, lat]
+ } else {
+ var dlat = transformlat(lng - 105.0, lat - 35.0);
+ var dlng = transformlng(lng - 105.0, lat - 35.0);
+ var radlat = lat / 180.0 * PI;
+ var magic = Math.sin(radlat);
+ magic = 1 - ee * magic * magic;
+ var sqrtmagic = Math.sqrt(magic);
+ dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI);
+ dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI);
+ var mglat = lat + dlat;
+ var mglng = lng + dlng;
+ return [mglng, mglat]
+ }
+ };
+
+ /**
+ * GCJ-02 转换为 WGS-84
+ * @param lng
+ * @param lat
+ * @returns {*[]}
+ */
+ var gcj02towgs84 = function gcj02towgs84(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ if (out_of_china(lng, lat)) {
+ return [lng, lat]
+ } else {
+ var dlat = transformlat(lng - 105.0, lat - 35.0);
+ var dlng = transformlng(lng - 105.0, lat - 35.0);
+ var radlat = lat / 180.0 * PI;
+ var magic = Math.sin(radlat);
+ magic = 1 - ee * magic * magic;
+ var sqrtmagic = Math.sqrt(magic);
+ dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI);
+ dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI);
+ var mglat = lat + dlat;
+ var mglng = lng + dlng;
+ return [lng * 2 - mglng, lat * 2 - mglat]
+ }
+ };
+
+ var transformlat = function transformlat(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ var ret = -100.0 + 2.0 * lng + 3.0 * lat + 0.2 * lat * lat + 0.1 * lng * lat + 0.2 * Math.sqrt(Math.abs(lng));
+ ret += (20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0 / 3.0;
+ ret += (20.0 * Math.sin(lat * PI) + 40.0 * Math.sin(lat / 3.0 * PI)) * 2.0 / 3.0;
+ ret += (160.0 * Math.sin(lat / 12.0 * PI) + 320 * Math.sin(lat * PI / 30.0)) * 2.0 / 3.0;
+ return ret
+ };
+
+ var transformlng = function transformlng(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ var ret = 300.0 + lng + 2.0 * lat + 0.1 * lng * lng + 0.1 * lng * lat + 0.1 * Math.sqrt(Math.abs(lng));
+ ret += (20.0 * Math.sin(6.0 * lng * PI) + 20.0 * Math.sin(2.0 * lng * PI)) * 2.0 / 3.0;
+ ret += (20.0 * Math.sin(lng * PI) + 40.0 * Math.sin(lng / 3.0 * PI)) * 2.0 / 3.0;
+ ret += (150.0 * Math.sin(lng / 12.0 * PI) + 300.0 * Math.sin(lng / 30.0 * PI)) * 2.0 / 3.0;
+ return ret
+ };
+
+ /**
+ * 判断是否在国内,不在国内则不做偏移
+ * @param lng
+ * @param lat
+ * @returns {boolean}
+ */
+ var out_of_china = function out_of_china(lng, lat) {
+ var lat = +lat;
+ var lng = +lng;
+ // 纬度 3.86~53.55, 经度 73.66~135.05
+ return !(lng > 73.66 && lng < 135.05 && lat > 3.86 && lat < 53.55);
+ };
+
+ return {
+ bd09togcj02: bd09togcj02,
+ gcj02tobd09: gcj02tobd09,
+ wgs84togcj02: wgs84togcj02,
+ gcj02towgs84: gcj02towgs84
+ }
+}));
diff --git a/public/index.html b/public/index.html
index f77ca95..1f0a7d0 100644
--- a/public/index.html
+++ b/public/index.html
@@ -18,6 +18,7 @@
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/2.8.12/index.css">
<script src="<%= BASE_URL %>cdn/xlsx/FileSaver.min.js"></script>
<script src="<%= BASE_URL %>cdn/xlsx/xlsx.full.min.js"></script>
+ <script src="./geo.js"></script>
<link rel="icon" href="<%= BASE_URL %>favicon.png">
<!-- <title>保安监管系统</title> -->
<title>智慧保安监管模块</title>
@@ -121,4 +122,4 @@
<script src="<%= BASE_URL %>cdn/avue/2.8.12/avue.min.js" charset="utf-8"></script>
</body>
-</html>
\ No newline at end of file
+</html>
diff --git a/public/scoket.html b/public/scoket.html
new file mode 100644
index 0000000..faf475f
--- /dev/null
+++ b/public/scoket.html
@@ -0,0 +1,60 @@
+<html>
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset = utf-8" />
+ <title>WebSocket客户端</title>
+ <script type="text/javascript">
+ var socket;
+ if (!window.WebSocket) {
+ window.WebSocket = window.MozWebSocket;
+ }
+
+ if (window.WebSocket) {
+ socket = new WebSocket("ws://localhost:9034/websocket");
+ socket.onmessage = function(event) {
+ var ta = document.getElementById('responseContent');
+ ta.value += event.data + "\r\n";
+ };
+
+ socket.onopen = function(event) {
+ var ta = document.getElementById('responseContent');
+ ta.value = "你当前的浏览器支持WebSocket,请进行后续操作\r\n";
+ };
+
+ socket.onclose = function(event) {
+ var ta = document.getElementById('responseContent');
+ ta.value = "";
+
+ ta.value = "WebSocket连接已经关闭\r\n";
+ };
+ } else {
+ alert("您的浏览器不支持WebSocket");
+ }
+
+
+
+ function send(message) {
+ if (!window.WebSocket) {
+ return;
+ }
+ if (socket.readyState == WebSocket.OPEN) {
+ socket.send(message);
+ } else {
+ alert("WebSocket连接没有建立成功!!");
+ }
+ }
+ </script>
+</head>
+
+<body>
+ <form onSubmit="return false;">
+ <input type="text" name="message" value="" />
+ <br/><br/>
+ <input type="button" value="发送WebSocket请求消息" onClick="send(this.form.message.value)" />
+ <hr color="red" />
+ <h2>客户端接收到服务端返回的应答消息</h2>
+ <textarea id="responseContent" style="width:1024px; height:300px"></textarea>
+ </form>
+</body>
+
+</html>
\ No newline at end of file
diff --git a/src/api/index/index.js b/src/api/index/index.js
index c22df6f..ab8b2e1 100644
--- a/src/api/index/index.js
+++ b/src/api/index/index.js
@@ -158,3 +158,37 @@
params: params
});
};
+// 获取押运人员列表
+export const getSelectPeo = params => {
+ return request({
+ url: "/api/blade-user/selectPeo",
+ method: "get",
+ params: params
+ });
+};
+
+// 获取车辆列表
+export const getSelectCar = (param) => {
+ return request({
+ url: '/api/car/selectCar',
+ method: 'get',
+ params: param
+ })
+}
+
+// 获取枪支列表
+export const getSelectGun = (param) => {
+ return request({
+ url: '/api/equipage/selectGun',
+ method: 'get',
+ params: param
+ })
+}
+// 现实表现弹窗接口
+export const xsbxPages = params => {
+ return request({
+ url: "/api/information/selectBxc",
+ method: "post",
+ params: params
+ });
+};
diff --git a/src/api/loginRecord/loginRecord.js b/src/api/loginRecord/loginRecord.js
new file mode 100644
index 0000000..a36b891
--- /dev/null
+++ b/src/api/loginRecord/loginRecord.js
@@ -0,0 +1,25 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+ return request({
+ url: '/api/loginRecord/page',
+ method: 'get',
+ params: {
+ current,
+ size,
+ ...params
+ }
+ })
+}
+
+export const getInformationLoginPage = (current, size, params) => {
+ return request({
+ url: '/api/loginRecord/getInformationLoginPage',
+ method: 'get',
+ params: {
+ current,
+ size,
+ ...params
+ }
+ })
+}
\ No newline at end of file
diff --git a/src/api/map/car.js b/src/api/map/car.js
index 7eab094..e3a29c9 100644
--- a/src/api/map/car.js
+++ b/src/api/map/car.js
@@ -18,7 +18,7 @@
export const getTrack = (param) => {
return request({
- url: '/api/liveLocation/getLocusInfoList',
+ url: '/api/locus/pages',
method: 'get',
params: param
})
@@ -26,7 +26,7 @@
export const getNewPosition = (param) => {
return request({
- url: '/api/car/locationcar',
+ url: '/api/liveLocation/detail',
method: 'get',
params: param
})
diff --git a/src/api/map/gun.js b/src/api/map/gun.js
index 43819a5..5aab27d 100644
--- a/src/api/map/gun.js
+++ b/src/api/map/gun.js
@@ -8,17 +8,9 @@
})
}
-export const getPosition = (param) => {
- return request({
- url: '/api/liveLocation/detail',
- method: 'get',
- params: param
- })
-}
-
export const getTrack = (param) => {
return request({
- url: '/api/liveLocation/getLocusInfoList',
+ url: '/api/investigate/gun',
method: 'get',
params: param
})
diff --git a/src/api/map/people.js b/src/api/map/people.js
index 5f37987..765f44d 100644
--- a/src/api/map/people.js
+++ b/src/api/map/people.js
@@ -27,7 +27,7 @@
export const getTrack = (param) => {
return request({
- url: '/api/liveLocation/getLocusInfoList',
+ url: '/api/locus/pages',
method: 'get',
params: param
})
@@ -42,15 +42,7 @@
export const getNewPeople = (param) => {
return request({
- url: '/api/car/Peo',
- method: 'get',
- params: param
- })
-}
-
-export const getNewTark = (param) => {
- return request({
- url: '/api/car/Peog',
+ url: '/api/liveLocation/detail',
method: 'get',
params: param
})
diff --git a/src/api/qualificationExamination/signQualificationExamination.js b/src/api/qualificationExamination/signQualificationExamination.js
index 810ce7a..8173281 100644
--- a/src/api/qualificationExamination/signQualificationExamination.js
+++ b/src/api/qualificationExamination/signQualificationExamination.js
@@ -23,6 +23,18 @@
})
}
+export const getTrainList = (current, size, params) => {
+ return request({
+ url: '/api/trainingRegistration/page',
+ method: 'get',
+ params: {
+ ...params,
+ current,
+ size,
+ }
+ })
+}
+
export const adddata = (row) => {
return request({
// return newAxios({
diff --git a/src/api/securityCompany/companyDetails.js b/src/api/securityCompany/companyDetails.js
index 13a33a0..d01fa24 100644
--- a/src/api/securityCompany/companyDetails.js
+++ b/src/api/securityCompany/companyDetails.js
@@ -1,90 +1,110 @@
import request from '@/router/axios';
export const manifestationList = (securityid) => {
- return request({
- url: '/api/performance/list',
- method: 'get',
- params: {
- securityid
- }
- })
+ return request({
+ url: '/api/performance/list',
+ method: 'get',
+ params: {
+ securityid
+ }
+ })
}
export const dispatchList = (cardid) => {
- return request({
- url: '/api/dispatcher/page',
- method: 'get',
- params: {
- cardid
- }
- })
+ return request({
+ url: '/api/dispatcher/page',
+ method: 'get',
+ params: {
+ cardid
+ }
+ })
}
export const honorchList = (cardid) => {
- return request({
- url: '/api/honor/list',
- method: 'get',
- params: {
- cardid
- }
- })
+ return request({
+ url: '/api/honor/list',
+ method: 'get',
+ params: {
+ cardid
+ }
+ })
}
export const trainList = (cardid) => {
- return request({
- url: '/api/train/selectTrainInfo',
- method: 'post',
- params: {
- cardid
- }
- })
+ return request({
+ url: '/api/train/selectTrainInfo',
+ method: 'post',
+ params: {
+ cardid
+ }
+ })
}
export const examinationList = (cardid) => {
- return request({
- url: '/api/examination/selectExaminationInfo',
- method: 'post',
- params: {
- cardid
- }
- })
+ return request({
+ url: '/api/examination/selectExaminationInfo',
+ method: 'post',
+ params: {
+ cardid
+ }
+ })
}
export const getInvestorList = (current, size, params) => {
- return request({
- url: '/api/shareholder/selectShareholderInfo',
- method: 'post',
- params: {
- ...params,
- current,
- size,
- }
- })
+ return request({
+ url: '/api/shareholder/selectShareholderInfo',
+ method: 'post',
+ params: {
+ ...params,
+ current,
+ size,
+ }
+ })
}
export const getManageList = (current, size, params) => {
- return request({
- url: '/api/member/selectMemberInfo',
- method: 'post',
- params: {
- ...params,
- current,
- size
- }
- })
+ return request({
+ url: '/api/member/selectMemberInfo',
+ method: 'post',
+ params: {
+ ...params,
+ current,
+ size
+ }
+ })
}
export const usejurisdiction = () => {
- return request({
- url: '/api/jurisdiction/lazy-tree',
- method: 'get',
- // params: {
- // ...params,
- // current,
- // size,
- // creditcode,
- // }
- })
+ return request({
+ url: '/api/jurisdiction/lazy-tree',
+ method: 'get',
+ // params: {
+ // ...params,
+ // current,
+ // size,
+ // creditcode,
+ // }
+ })
}
+
+export const getBusinessInfo = (deptId) => {
+ return request({
+ url: '/api/business/getBusinessInfo',
+ method: 'get',
+ params: {
+ deptId,
+ }
+ })
+}
+
+export const getLicenceDetail = (deptId) => {
+ return request({
+ url: '/api/licencePaper/detail',
+ method: 'get',
+ params: {
+ deptId,
+ }
+ })
+}
\ No newline at end of file
diff --git a/src/api/securityCompany/security.js b/src/api/securityCompany/security.js
index d4e7c9c..33bc01d 100644
--- a/src/api/securityCompany/security.js
+++ b/src/api/securityCompany/security.js
@@ -1,96 +1,104 @@
import request from '@/router/axios';
export const getList = (current, size, params, stats) => {
- return request({
- url: '/api/information/page',
- method: 'get',
- params: {
- ...params,
- current,
- size,
- stats
- }
- })
+ return request({
+ url: '/api/information/page',
+ method: 'get',
+ params: {
+ ...params,
+ current,
+ size,
+ stats
+ }
+ })
}
-export const getListold = (current, size, params, stats) => {//2021.8.25因内网公司接口需要同步成外网公司接口 舍弃
- return request({
- url: '/api/information/list',
- method: 'get',
- params: {
- ...params,
- current,
- size,
- stats
- }
- })
+export const getListold = (current, size, params, stats) => { //2021.8.25因内网公司接口需要同步成外网公司接口 舍弃
+ return request({
+ url: '/api/information/list',
+ method: 'get',
+ params: {
+ ...params,
+ current,
+ size,
+ stats
+ }
+ })
}
export const getPostList = (tenantId) => {
- return request({
- url: '/api/blade-system/post/select',
- method: 'get',
- params: {
- tenantId
- }
- })
+ return request({
+ url: '/api/blade-system/post/select',
+ method: 'get',
+ params: {
+ tenantId
+ }
+ })
}
export const getDetail = (id) => {
- return request({
- url: '/api/blade-system/post/detail',
- method: 'get',
- params: {
- id
- }
- })
+ return request({
+ url: '/api/blade-system/post/detail',
+ method: 'get',
+ params: {
+ id
+ }
+ })
}
export const remove = (ids) => {
- return request({
- url: '/api/blade-system/post/remove',
- method: 'post',
- params: {
- ids,
- }
- })
+ return request({
+ url: '/api/blade-system/post/remove',
+ method: 'post',
+ params: {
+ ids,
+ }
+ })
+}
+
+export const getInformationDetails = (data) => {
+ return request({
+ url: '/api/information/getInformationDetails',
+ method: 'get',
+ params: data
+ })
}
export const add = (row) => {
- return request({
- url: '/api/blade-system/post/submit',
- method: 'post',
- data: row
- })
+ return request({
+ url: '/api/blade-system/post/submit',
+ method: 'post',
+ data: row
+ })
}
export const update = (row) => {
- return request({
- url: '/api/blade-system/post/submit',
- method: 'post',
- data: row
- })
+ return request({
+ url: '/api/blade-system/post/submit',
+ method: 'post',
+ data: row
+ })
}
export const getListPunish = (current, size, params, deptid) => {
- return request({
- url: '/api/punish/list',
- method: 'get',
- params: {
- ...params,
- current,
- size,
- deptid
- }
- })
+ return request({
+ url: '/api/punish/list',
+ method: 'get',
+ params: {
+ ...params,
+ current,
+ size,
+ deptid
+ }
+ })
}
export const savePunish = (row) => {
- return request({
- url: '/api/punish/save',
- method: 'post',
- data: row
- })
-}
+ return request({
+ url: '/api/punish/save',
+ method: 'post',
+ data: row
+ })
+}
\ No newline at end of file
diff --git a/src/api/system/user.js b/src/api/system/user.js
index c4c3643..bccfd42 100644
--- a/src/api/system/user.js
+++ b/src/api/system/user.js
@@ -51,6 +51,14 @@
})
}
+export const updateUser = (row) => {
+ return request({
+ url: '/api/blade-user/updateUser',
+ method: 'post',
+ data: row
+ })
+}
+
export const updatePlatform = (userId, userType, userExt) => {
return request({
url: '/api/blade-user/update-platform',
diff --git a/src/components/map/main.vue b/src/components/map/main.vue
index fd4c1f0..420ec71 100644
--- a/src/components/map/main.vue
+++ b/src/components/map/main.vue
@@ -94,7 +94,7 @@
},
mounted () {
//建立地图
- this.createmap(1); //1为本地
+ this.createmap(2); //1为本地
this.parentParameter();
diff --git a/src/page/index/logo.vue b/src/page/index/logo.vue
index 4690329..c2a613a 100644
--- a/src/page/index/logo.vue
+++ b/src/page/index/logo.vue
@@ -23,11 +23,71 @@
data() {
return {};
},
- created() {},
+ created() {
+ // this.websocketStart();
+ },
computed: {
...mapGetters(["website", "keyCollapse"])
},
- methods: {}
+ methods: {
+ //启动websocket
+ websocketStart() {
+ var that = this;
+
+ if (!window.WebSocket) {
+ window.WebSocket = window.MozWebSocket;
+ }
+ if (window.WebSocket) {
+ // https
+ // window.socket = new WebSocket("wss://web.byisf.com/wss/websocket/");
+
+ //http
+ window.socket = new WebSocket("ws://localhost:9034/websocket");
+
+ window.socket.onopen = function (event) {};
+
+ window.socket.onclose = function (event) {};
+ window.socket.error = function (event) {
+ //执行重连
+ that.websocketStart();
+ };
+ } else {
+ console.log("WebSocket连接没有建立成功!!");
+ }
+
+ setTimeout(function () {
+ window.clearTimeout(window.websockPing);
+
+ if (!window.WebSocket) {
+ return;
+ }
+ if (window.socket.readyState == WebSocket.OPEN) {
+ var userId = JSON.parse(
+ window.localStorage.getItem("-userInfo")
+ ).content.user_id;
+
+ window.socket.send(userId);
+
+ //开启心跳传送
+ window.websockPing = setInterval(function () {
+ if (window.socket.readyState == WebSocket.OPEN) {
+ window.socket.send("ping");
+ } else {
+ console.log("心跳停止,断开重连");
+ //断开连接,重连
+ window.clearTimeout(window.websockPing);
+ //执行重连
+ that.websocketStart();
+ }
+ }, 4000);
+ } else {
+ console.log("WebSocket连接没有建立成功!!");
+ //执行重连
+ that.websocketStart();
+ }
+ }, 1000);
+ },
+ }
};
</script>
diff --git a/src/page/index/top/index.vue b/src/page/index/top/index.vue
index 72be84b..fd4ebac 100644
--- a/src/page/index/top/index.vue
+++ b/src/page/index/top/index.vue
@@ -19,7 +19,7 @@
</span>
</div>
<div class="top-bar__right">
- <el-tooltip v-if="showColor"
+ <!-- <el-tooltip v-if="showColor"
effect="dark"
:content="$t('navbar.color')"
placement="bottom">
@@ -50,7 +50,7 @@
<div class="top-bar__item top-bar__item--show">
<top-theme></top-theme>
</div>
- </el-tooltip>
+ </el-tooltip> -->
<!-- <el-tooltip effect="dark"
:content="$t('navbar.notice')"
placement="bottom">
@@ -58,13 +58,13 @@
<top-notice></top-notice>
</div>
</el-tooltip> -->
- <el-tooltip effect="dark"
+ <!-- <el-tooltip effect="dark"
:content="$t('navbar.language')"
placement="bottom">
<div class="top-bar__item top-bar__item--show">
<top-lang></top-lang>
</div>
- </el-tooltip>
+ </el-tooltip> -->
<el-tooltip v-if="showFullScren"
effect="dark"
:content="isFullScren?$t('navbar.screenfullF'):$t('navbar.screenfull')"
diff --git a/src/styles/map.scss b/src/styles/map.scss
index aad2e2e..9419458 100644
--- a/src/styles/map.scss
+++ b/src/styles/map.scss
@@ -2,7 +2,7 @@
#avue-view {
&>.morpheus-map-box {
position: absolute;
- top: 40px;
+ top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
diff --git a/src/views/home/index.scss b/src/views/home/index.scss
index 6c4b929..4aa35ac 100644
--- a/src/views/home/index.scss
+++ b/src/views/home/index.scss
@@ -259,6 +259,7 @@
/deep/ .el-table td,
.el-table th.is-leaf {
border-bottom-color: transparent;
+ background: rgb(3, 34, 91) !important;
}
/deep/ .el-table__header th {
border-bottom: 1px solid #031a38 !important;
@@ -694,28 +695,28 @@
height: 77%;
}
}
-.bottom-table{
+.bottom-table {
width: calc(100% - 40px);
height: 100%;
margin: 0px 20px 15px;
top: 50px;
- .el-table{
+ .el-table {
width: 100%;
height: calc(100% - 65px);
top: 50px;
overflow-y: auto;
}
}
-::-webkit-scrollbar{
+::-webkit-scrollbar {
display: none;
}
-.dialog-table{
+.dialog-table {
top: 0px !important;
margin: 0px !important;
width: 100% !important;
height: calc(100% - 50px) !important;
overflow: auto;
- .el-table{
+ .el-table {
width: 100%;
height: 100%;
overflow: auto;
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 70bdd3e..cc22090 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -126,33 +126,27 @@
></el-table-column>
<el-table-column
:key="curTableType"
- prop="carNum"
- label="押运车辆车牌号"
+ prop="mode"
+ label="车辆型号"
width="180"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="location"
- label="实时位置"
+ prop="personInCharge"
+ label="责任人"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="company"
- label="所属公司"
+ prop="dateForProduction"
+ label="出厂日期"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="linkman"
- label="联系人"
- ></el-table-column>
- <el-table-column
- :key="curTableType"
- show-overflow-tooltip
- prop="tel"
- label="联系电话"
+ prop="detailObj"
+ label="厂商"
></el-table-column>
</template>
<template v-if="curTableType === 1">
@@ -165,26 +159,26 @@
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="name"
+ prop="realName"
label="押运人员名称"
width="180"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="location"
- label="实时位置"
+ prop="address"
+ label="联系地址"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="company"
+ prop="deptName"
label="所属公司"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="tel"
+ prop="phone"
label="联系电话"
></el-table-column>
<!-- <el-table-column :key="curTableType" prop="bz" label="备注">
@@ -200,32 +194,37 @@
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="number"
- label="枪支编号"
+ prop="gunMode"
+ label="枪支类型"
width="180"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="location"
- label="实时位置"
+ prop="personInCharge"
+ label="责任人"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="company"
- label="所属公司"
+ prop="issueTime"
+ label="发证日期"
></el-table-column>
<el-table-column
:key="curTableType"
show-overflow-tooltip
- prop="linkman"
- label="负责人"
+ prop="validTime"
+ label="有效日期"
></el-table-column>
<el-table-column
:key="curTableType"
- prop="tel"
- label="联系电话"
+ prop="issueUnit"
+ label="发证单位"
+ ></el-table-column>
+ <el-table-column
+ :key="curTableType"
+ prop="cardNumber"
+ label="用枪编号"
></el-table-column>
</template>
</el-table>
@@ -473,6 +472,14 @@
:key="gridData.type"
prop="examinationMx"
label="审查明细"
+ :show-overflow-tooltip="true"
+ width="150"
+ ></el-table-column>
+ <el-table-column
+ v-if="gridData.type === 'zg'"
+ :key="gridData.type"
+ prop="emails"
+ label="审查异常备注"
:show-overflow-tooltip="true"
width="150"
></el-table-column>
@@ -756,6 +763,7 @@
seCountI,
selectExtypeUser,
qualificationPages,
+ xsbxPages,
selectCf,
selectCl,
selectYs,
@@ -763,10 +771,14 @@
selectWg,
punishList,
lazyTrees,
- getSecurityUnitInfoPage
+ getSecurityUnitInfoPage,
+ getSelectPeo,
+ getSelectCar,
+ getSelectGun
} from "../../api/index/index";
-import { getPosition, getNewPeople } from "@/api/map/people";
-import { getNewPosition } from "@/api/map/car";
+import { getPeopleList, getPosition, getNewPeople } from "@/api/map/people";
+import { getCarList, getNewPosition } from "@/api/map/car";
+import { getGunList } from "@/api/map/gun";
import car from "@/assets/img/car.png";
import peo from "@/assets/img/people.png";
@@ -865,31 +877,36 @@
},
methods: {
getPeoplePosition() {
- getPosition({ type: 1, workerId: "1432897970143014913" }).then(result => {
- getNewPeople().then(res => {
- if (JSON.stringify(res.data) != "{}") {
- var arr = res.data.sort(function(a, b) {
- return a["date"] < b["date"] ? 1 : -1;
- });
+ getNewPeople({ type: 1, workerId: "1457916357495537665" }).then(
+ result => {
+ var res = result.data.data;
+ if (JSON.stringify(res) != "{}") {
+ var csGps = window.coordtransform.bd09togcj02(
+ Number(res.longitude),
+ Number(res.latitude)
+ );
+ // var arr = res.data.sort(function(a, b) {
+ // return a["date"] < b["date"] ? 1 : -1;
+ // });
this.peopleGps = {
- LGTD: arr[0].gis_jd,
- LTTD: arr[0].gis_wd
+ LGTD: csGps[0],
+ LTTD: csGps[1]
};
}
- this.getTableData(0);
- });
- });
+ this.getCarPosition();
+ }
+ );
},
getCarPosition() {
- getNewPosition({ imei: "861636056082414" }).then(result => {
+ getNewPosition({ type: 2, workerId: "赣AD77669" }).then(result => {
var res = result.data.data;
if (JSON.stringify(res) != "{}") {
this.carGps = {
- LGTD: res.x,
- LTTD: res.y
+ LGTD: Number(res.longitude),
+ LTTD: Number(res.latitude)
};
}
- this.getTableData(0);
+ this.getTableData();
});
},
//点击节点
@@ -1092,51 +1109,51 @@
if (type === 2) {
this.tableData.forEach(item => {
let obj =
- "押运车辆车牌号" +
- item.carNum +
- ",当前位置" +
- item.location +
- ",所属公司" +
- item.company +
- ",联系人" +
- item.linkman +
- ",联系电话" +
- item.tel;
+ "押运车辆型号" +
+ item.mode +
+ ",责任人" +
+ item.personInCharge +
+ ",出厂日期" +
+ item.dateForProduction +
+ ",厂商" +
+ item.detailObj;
this.textArr.push(obj);
});
} else if (type === 1) {
this.tableData.forEach(item => {
let obj =
"押运人员" +
- item.name +
- ",当前位置" +
- item.location +
+ item.realName +
+ ",联系地址" +
+ item.address +
",所属公司" +
- item.linkman +
+ item.deptName +
",联系电话" +
- item.tel;
+ item.phone;
this.textArr.push(obj);
});
} else if (type === 3) {
this.tableData.forEach(item => {
let obj =
- "枪支编号" +
- item.number +
- ",当前位置" +
- item.location +
- ",所属公司" +
- item.company +
- ",负责人" +
- item.linkman +
- ",联系电话" +
- item.tel;
+ "枪支类型" +
+ item.gunMode +
+ ",责任人" +
+ item.personInCharge +
+ ",发证日期" +
+ item.issueTime +
+ ",有效日期" +
+ item.validTime +
+ ",发证单位" +
+ item.issueUnit +
+ ",用枪编号" +
+ item.cardNumber;
this.textArr.push(obj);
});
}
},
// 获取表格及地图上的数据
- getTableData(type) {
- let middleData = {
+ getTableData() {
+ this.mapData = {
1: {
table: [],
geoData: []
@@ -1150,58 +1167,132 @@
geoData: []
}
};
- getLiveLocationVoList({ type: type }).then(res => {
- if (res.data.code === 200) {
- let allData = res.data.data;
- allData.forEach(m => {
- let obj = {
- location: m.location,
- name: m.name,
- number: m.number,
- linkman: m.linkman,
- company: m.company,
- tel: m.tel,
- carNum: m.carNum
- };
+ // 获取人员列表
+ getSelectPeo({ type: 1, deptId: "1460129345988239362" }).then(res => {
+ var records = res.data.data;
+ records.forEach(m => {
+ let obj = {
+ address: m.address,
+ realName: m.real_name,
+ deptName: m.deptName,
+ phone: m.phone,
+ id: m.id
+ };
+ this.mapData[1]["geoData"].push([
+ Number(this.peopleGps.LGTD),
+ Number(this.peopleGps.LTTD)
+ ]);
+ this.mapData[1]["table"].push(obj);
+ });
+ this.peoNum = this.mapData[1]["table"].length;
+ });
- // let geoObj = {
- // name: type,
- // value: [Number(m.longitude), Number(m.latitude)],
- // };
- if (m.type === 1) {
- middleData[m.type]["geoData"].push([
- Number(this.peopleGps.LGTD),
- Number(this.peopleGps.LTTD)
- ]);
- middleData[m.type]["table"].push(obj);
- } else if (m.type === 2) {
- middleData[m.type]["geoData"].push([
- Number(this.carGps.LGTD),
- Number(this.carGps.LTTD)
- ]);
- middleData[m.type]["table"].push(obj);
- } else {
- middleData[m.type]["geoData"].push([
- Number(m.longitude),
- Number(m.latitude)
- ]);
- middleData[m.type]["table"].push(obj);
- }
- // middleData[m.type]["geoData"].push([
- // Number(m.longitude),
- // Number(m.latitude)
- // ]);
- // middleData[m.type]["table"].push(obj);
+ //获取车辆列表
+ getSelectCar({
+ type: 1,
+ deptId: "1460129345988239362"
+ }).then(res => {
+ var records = res.data.data;
+ records.forEach(m => {
+ let obj = {
+ mode: m.mode,
+ personInCharge: m.person_in_charge,
+ dateForProduction: m.date_for_production,
+ detailObj: m.brand,
+ // location: m.address,
+ // name: m.name,
+ // company: m.deptName,
+ // tel: m.phone,
+ id: m.id
+ };
+ this.mapData[2]["geoData"].push([
+ Number(this.carGps.LGTD),
+ Number(this.carGps.LTTD)
+ ]);
+ this.mapData[2]["table"].push(obj);
+ });
+ this.carNum = this.mapData[2]["table"].length;
+ this.setMapData(2);
+ });
+
+ // 获取枪支列表
+ getLiveLocationVoList({
+ type: 3
+ }).then(res => {
+ if (res.data.code === 200) {
+ let records = res.data.data;
+ records.forEach(m => {
+ let obj = {
+ gunMode: m.number,
+ personInCharge: m.linkman,
+ issueTime: m.issueTime,
+ validTime: m.validTime,
+ issueUnit: m.issueUnit,
+ cardNumber: m.gunNum,
+ id: m.id
+ };
+ debugger
+ this.mapData[3]["geoData"].push([
+ Number(m.longitude),
+ Number(m.latitude)
+ ]);
+ this.mapData[3]["table"].push(obj);
});
- this.carNum = middleData[2]["table"].length;
- this.peoNum = middleData[1]["table"].length;
- this.gunNum = middleData[3]["table"].length;
- this.mapData = middleData;
- this.setMapData(2);
- } else {
- this.$message.error(res.msg);
+ this.gunNum = this.mapData[3]["table"].length;
}
});
+ // getLiveLocationVoList({ type: type }).then(res => {
+ // if (res.data.code === 200) {
+ // let allData = res.data.data;
+ // allData.forEach(m => {
+ // let obj = {
+ // location: m.location,
+ // name: m.name,
+ // number: m.number,
+ // linkman: m.linkman,
+ // company: m.company,
+ // tel: m.tel,
+ // carNum: m.carNum
+ // };
+
+ // // let geoObj = {
+ // // name: type,
+ // // value: [Number(m.longitude), Number(m.latitude)],
+ // // };
+ // // if (m.type === 1) {
+ // // middleData[m.type]["geoData"].push([
+ // // Number(this.peopleGps.LGTD),
+ // // Number(this.peopleGps.LTTD)
+ // // ]);
+ // // middleData[m.type]["table"].push(obj);
+ // // } else if (m.type === 2) {
+ // // middleData[m.type]["geoData"].push([
+ // // Number(this.carGps.LGTD),
+ // // Number(this.carGps.LTTD)
+ // // ]);
+ // // middleData[m.type]["table"].push(obj);
+ // // } else {
+ // // middleData[m.type]["geoData"].push([
+ // // Number(m.longitude),
+ // // Number(m.latitude)
+ // // ]);
+ // // middleData[m.type]["table"].push(obj);
+ // // }
+ // middleData[m.type]["geoData"].push([
+ // Number(m.longitude),
+ // Number(m.latitude)
+ // ]);
+ // middleData[m.type]["table"].push(obj);
+ // });
+ // this.carNum = middleData[2]["table"].length;
+ // this.peoNum = middleData[1]["table"].length;
+ // this.gunNum = middleData[3]["table"].length;
+ // this.mapData = middleData;
+ // this.setMapData(2);
+ // } else {
+ // this.$message.error(res.msg);
+ // }
+ // });
},
// 获取辖区列表
@@ -1248,7 +1339,7 @@
this.getPunishList(1);
} else if (type === "xs") {
this.gridData.title = "现实表现差人员清单";
- this.getQualificationPages(1);
+ this.getXsbxPages(1);
}
},
getWgTable() {
@@ -1309,7 +1400,7 @@
});
},
changePage(page) {
- if (this.gridData.type === "zg" || this.gridData.type === "xs") {
+ if (this.gridData.type === "zg") {
this.getQualificationPages(page);
} else if (this.gridData.type === "wg") {
this.gridData.data = this.dialogTable.wgTable.slice(
@@ -1330,22 +1421,42 @@
this.getPunishList(page);
} else if (this.gridData.type === "ywdx_gs") {
this.showDialogTable(this.gridData.type);
+ } else if (this.gridData.type === "xs") {
+ this.getXsbxPages(page);
}
+ },
+ // 现实表现差弹框
+ getXsbxPages(page) {
+ this.gridData.current = page;
+ this.dialogloading = true;
+ this.gridData.data = [];
+ let types = this.poorPerformanceType.toString()
+ let params = {
+ current: this.gridData.current,
+ size: 10,
+ jurisdiction: this.value1,
+ type:types
+ };
+ xsbxPages(params).then(res => {
+ if (res.data.code === 200) {
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ this.dialogloading = false;
+ });
},
getQualificationPages(page) {
this.gridData.current = page;
this.dialogloading = true;
this.gridData.data = [];
+ let types = this.poorPerformanceType.toString();
let params = {
current: this.gridData.current,
size: 10,
- jurisdiction: this.value1
+ jurisdiction: this.value1,
+ examinationType: 1,
+ types: types
};
- if (this.gridData.type === "zg") {
- Object.assign(params, { examinationType: 1 });
- } else if (this.gridData.type === "xs") {
- Object.assign(params, { score: 3 });
- }
qualificationPages(params).then(res => {
if (res.data.code === 200) {
this.gridData.data = res.data.data.records;
@@ -1489,7 +1600,7 @@
},
mounted() {
this.getPeoplePosition();
- this.getCarPosition();
+ // this.getCarPosition();
this.initEchart();
this.getHolderNum(0);
// this.getPoorPerformance(3);
diff --git a/src/views/home/indexEchart.js b/src/views/home/indexEchart.js
index b0c6a9f..cd3f3d0 100644
--- a/src/views/home/indexEchart.js
+++ b/src/views/home/indexEchart.js
@@ -199,7 +199,7 @@
type: "category",
axisLabel: {
color: "#fff",
- rotate: 40,
+ rotate: 40
},
data: nameArr
},
@@ -579,13 +579,13 @@
name = "保安员名称";
label =
"押运人员:" +
- item.name +
- "<br />当前位置:" +
- item.location +
+ item.realName +
+ "<br />联系地址:" +
+ item.address +
"<br />所属公司:" +
- item.linkman +
+ item.deptName +
"<br />联系电话:" +
- item.tel;
+ item.phone;
symbolUrl = require("@/assets/img/people.png");
obj = {
name: label,
@@ -594,16 +594,14 @@
} else if (type === 2) {
name = "押运车辆";
label =
- "押运车辆车牌号:" +
- item.carNum +
- "<br />当前位置:" +
- item.location +
- "<br />所属公司:" +
- item.company +
- "<br />联系人:" +
- item.linkman +
- "<br />联系电话:" +
- item.tel;
+ "押运车辆型号:" +
+ item.mode +
+ "<br />责任人:" +
+ item.personInCharge +
+ "<br />出厂日期:" +
+ item.dateForProduction +
+ "<br />厂商:" +
+ item.detailObj;
symbolUrl = require("@/assets/img/car.png");
obj = {
name: label,
@@ -612,16 +610,18 @@
} else if (type === 3) {
name = "枪支";
label =
- "枪支编号:" +
- item.number +
- "<br />当前位置:" +
- item.location +
- "<br />所属公司:" +
- item.company +
- "<br />负责人:" +
- item.linkman +
- "<br />联系电话:" +
- item.tel;
+ "枪支类型:" +
+ item.gunMode +
+ "<br />责任人:" +
+ item.personInCharge +
+ "<br />发证日期:" +
+ item.issueTime +
+ "<br />有效日期:" +
+ item.validTime +
+ "<br />发证单位:" +
+ item.issueUnit +
+ "<br />用枪编号:" +
+ item.cardNumber;
symbolUrl = require("@/assets/img/gun.png");
obj = {
name: label,
diff --git a/src/views/loginRecord/loginRecord.vue b/src/views/loginRecord/loginRecord.vue
new file mode 100644
index 0000000..e74235f
--- /dev/null
+++ b/src/views/loginRecord/loginRecord.vue
@@ -0,0 +1,192 @@
+<template>
+ <div>
+ <avue-crud
+ :option="option"
+ :data="data"
+ :page.sync="page"
+ :table-loading="loading"
+ @on-load="onLoad(page)"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @refresh-change="refreshChange"
+ >
+ </avue-crud>
+ </div>
+</template>
+
+<script>
+import { getInformationLoginPage } from "@/api/loginRecord/loginRecord";
+export default {
+ data() {
+ return {
+ securityid: "",
+ ExperienceVisible: false,
+ loading: true,
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ query: {},
+ data: [],
+ option: {
+ addBtn: false,
+ searchShowBtn: false,
+ columnBtn: false,
+ menu: false,
+ height: "auto",
+ widtd: "auto",
+ border: true,
+ stripe: true,
+ index: true,
+ align: "center",
+ column: [
+ {
+ label: "登录时间",
+ prop: "releaseTimeRange",
+ type: "datetime",
+ format: "yyyy-MM-dd",
+ valueFormat: "yyyy-MM-dd",
+ searchRange: true,
+ hide: true,
+ search: true,
+ searchSpan: 7,
+ rules: [
+ {
+ required: true,
+ message: "请输入登录时间",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "企业名称",
+ prop: "deptName",
+ disabled: true,
+ overHidden: true,
+ searchSpan: 5,
+ search: true,
+ },
+ {
+ label: "所属辖区",
+ prop: "jurisdictionName",
+ type: "select",
+ dicData: [
+ {
+ label: "男",
+ value: 1,
+ },
+ {
+ label: "女",
+ value: 2,
+ },
+ {
+ label: "未知",
+ value: 3,
+ },
+ ],
+ display: false,
+ },
+ {
+ label: "企业属性",
+ prop: "stats",
+ display: false,
+ minWidth: 90,
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=stats",
+ props: {
+ label: "dictValue",
+ value: "dictKey",
+ },
+ type: "select",
+ rules: [
+ {
+ required: true,
+ message: "请选择企业属性",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "最近一次登录时间",
+ prop: "createTime",
+ minWidth: 100,
+ display: false,
+ },
+ {
+ label: "登录次数",
+ prop: "num",
+ disabled: false,
+ },
+ {
+ label: "是否有登录",
+ prop: "types",
+ search: true,
+ disabled: false,
+ searchLabelWidth:110,
+ type: "select",
+ searchSpan: 5,
+ hide:true,
+ dicData: [
+ {
+ label: "全部",
+ value: 3,
+ },
+ {
+ label: "是",
+ value: 2,
+ },
+ {
+ label: "否",
+ value: 1,
+ },
+ ],
+ },
+ ],
+ },
+ };
+ },
+ methods: {
+ onLoad(page, params = {}) {
+
+ const { releaseTimeRange } = this.query;
+
+ let values = {
+ ...params,
+ };
+ if (releaseTimeRange) {
+ values = {
+ ...params,
+ startTime: releaseTimeRange[0],
+ endTime: releaseTimeRange[1],
+ ...this.query,
+ };
+ values.releaseTimeRange = null;
+ }
+
+ getInformationLoginPage(page.currentPage, page.pageSize, values).then((res) => {
+ const data = res.data.data;
+ this.data = data.records;
+ this.page.total = data.total;
+ this.loading = false;
+ });
+ },
+ refreshChange() {
+ this.onLoad(this.page, this.query);
+ },
+ searchChange(params, done) {
+ this.query = params;
+ this.page.currentPage = 1;
+ this.refreshChange();
+ done();
+ },
+ searchReset() {
+ this.query = {};
+ this.page.currentPage = 1;
+ this.refreshChange();
+ },
+ },
+};
+</script>
+
+<style scoped>
+</style>
\ No newline at end of file
diff --git a/src/views/map/carGps.vue b/src/views/map/carGps.vue
index 73a1371..f9be07c 100644
--- a/src/views/map/carGps.vue
+++ b/src/views/map/carGps.vue
@@ -2,7 +2,7 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-11-25 15:24:53
+ * @Last Modified time: 2021-11-30 17:32:40
* menu-name 押运人员定位
*/
<template>
@@ -122,38 +122,24 @@
</div>
</el-card>
- <el-dialog title="视频监控"
+ <el-dialog title=""
:modal='false'
:visible.sync="dialogVisible"
:before-close="dialogBeforeClose"
:close-on-click-modal='false'
- @closed="videoClose"
class="car-video-box">
- <div class="container"
- v-loading="videoLoading">
- <video id="videoElementOne"
- controls="controls"></video>
- <video id="videoElementTwo"
- controls="controls"></video>
- <video id="videoElementThree"
- controls="controls"></video>
- <video id="videoElementFour"
- controls="controls"></video>
- </div>
+ <iframe src="/carVideo/parent.html"
+ ref="videoIframe"
+ frameborder="0"></iframe>
</el-dialog>
</el-col>
</el-row>
</template>
<script>
-import { getCarList, getPosition, getNewPosition, getTrack, getVideoSrc, getNewCarTark } from "@/api/map/car";
-import axios from 'axios';
+import { getCarList, getTrack, getNewPosition } from "@/api/map/car";
import carPng from "@/assets/img/car.png";
-
-import flvjs from 'flv.js/dist/flv.min.js';
-
-const d3 = require('d3-dsv');
export default {
data () {
@@ -170,7 +156,6 @@
detailObj: {},
dialogVisible: false,
map: null,
- videoLoading: true
};
},
created () {
@@ -178,12 +163,17 @@
},
mounted () {
+
+
+
+
},
methods: {
getList () {
getCarList({
current: this.page.currentPage,
size: this.page.pageSize,
+ type: 1
}).then((res) => {
var data = res.data.data;
this.tableData = data.records;
@@ -203,17 +193,15 @@
},
positionClick (val) {
- // console.log(val)
-
- getNewPosition({ imei: "861636056082414" }).then((result) => {
+ getNewPosition({ type: 2, workerId: val.carNumber }).then((result) => {
var res = result.data.data;
-
+ console.log(res, 123)
if (JSON.stringify(res) != "{}") {
this.$refs.modalForm.addEntitys(
{
- LGTD: res.x,
- LTTD: res.y,
- name: "车辆位置",
+ LGTD: Number(res.longitude),
+ LTTD: Number(res.latitude),
+ name: "枪支位置",
},
carPng,
0.8,
@@ -253,12 +241,6 @@
this.disposeTime(startTime.getMinutes()) +
":" +
this.disposeTime(startTime.getSeconds());
-
- const startTWO =
- startTime.getFullYear() + '' +
- this.disposeTime(startTime.getMonth() + 1) + '' +
- this.disposeTime(startTime.getDate());
-
if (this.trackTime.length == 1) {
this.$message({ message: "请选择结束时间", duration: 2000 });
return;
@@ -277,48 +259,27 @@
":" +
this.disposeTime(endTime.getSeconds());
- const endTWO =
- endTime.getFullYear() + '' +
- this.disposeTime(endTime.getMonth() + 1) + '' +
- this.disposeTime(endTime.getDate());
-
getTrack({
- workerId: this.detailObj.id,
+ workerId: this.detailObj.carNumber,
type: 2,
- startTime: start,
+ beginTime: start,
endTime: end,
}).then((res) => {
+ var result = res.data.data;
- getNewCarTark({
- beginTime: startTWO,
- endTime: endTWO,
- rectify: 0,
- callbackId: 123
- }).then(res => {
- axios.get('http://s16s652780.51mypc.cn/car/' + res.data.data).then(result => {
- var ret = d3.csvParse(result.data)
-
- let arr = [];
- ret.forEach((item, index) => {
- if (index < ret.length - 1) {
- arr.push([Number(item.x), Number(item.y)]);
- }
-
- })
-
- this.$refs.modalForm.addLines(arr);
- })
+ var array = result.sort(function (a, b) {
+ return a['record_time'] > b['record_time'] ? 1 : -1
})
- // var result = res.data.data;
- // if (result.length > 1) {
- // let arr = [];
- // result.forEach((item) => {
- // arr.push([Number(item.longitude), Number(item.latitude)]);
- // });
+ if (array.length > 1) {
+ let arr = [];
- // this.$refs.modalForm.addLines(arr);
- // }
+ array.forEach((item) => {
+ arr.push([Number(item.longitude), Number(item.latitude)]);
+ });
+
+ this.$refs.modalForm.addLines(arr);
+ }
});
},
// 处理时间补零操作
@@ -351,101 +312,20 @@
if (cont != undefined) {
that.dialogVisible = true
- var oneflag = false, twoflag = false, threefalse = false, fourfalse = false;
- getVideoSrc({ camera: 0, action: 'start' }).then(res => {
- oneflag = true;
- if (twoflag == true && threefalse == true && fourfalse == true) {
- that.videoLoading = false;
- }
- if (flvjs.isSupported()) {
- var videoElement = document.getElementById('videoElementOne')
- var flvPlayer = flvjs.createPlayer({
- // isLive: true,
- // hasAudio: false,
- type: 'flv',
- url: res.data.data.live_url
- })
- flvPlayer.attachMediaElement(videoElement)
- flvPlayer.load()
- flvPlayer.play()
- }
- })
- getVideoSrc({ camera: 1, action: 'start' }).then(res => {
- twoflag = true;
- if (oneflag == true && threefalse == true && fourfalse == true) {
- that.videoLoading = false;
- }
- if (flvjs.isSupported()) {
- var videoElement = document.getElementById('videoElementTwo')
- var flvPlayer = flvjs.createPlayer({
- // isLive: true,
- // hasAudio: false,
- type: 'flv',
- url: res.data.data.live_url
- })
- flvPlayer.attachMediaElement(videoElement)
- flvPlayer.load()
- flvPlayer.play()
- }
- })
-
- getVideoSrc({ camera: 2, action: 'start' }).then(res => {
- threefalse = true;
- if (oneflag == true && twoflag == true && fourfalse == true) {
- that.videoLoading = false;
- }
- if (flvjs.isSupported()) {
- var videoElement = document.getElementById('videoElementThree')
- var flvPlayer = flvjs.createPlayer({
- // isLive: true,
- // hasAudio: false,
- type: 'flv',
- url: res.data.data.live_url
- })
- flvPlayer.attachMediaElement(videoElement)
- flvPlayer.load()
- flvPlayer.play()
- }
- })
-
- getVideoSrc({ camera: 4, action: 'start' }).then(res => {
- fourfalse = true;
- if (oneflag == true && twoflag == true && threefalse == true) {
- that.videoLoading = false;
- }
- if (flvjs.isSupported()) {
- var videoElement = document.getElementById('videoElementFour')
- var flvPlayer = flvjs.createPlayer({
- // isLive: true,
- // hasAudio: false,
- type: 'flv',
- url: res.data.data.live_url
- })
- flvPlayer.attachMediaElement(videoElement)
- flvPlayer.load()
- flvPlayer.play()
- }
- })
-
+ setTimeout(() => {
+ that.$refs.videoIframe.contentWindow.startVideo()
+ }, 3000);
}
})
},
- videoClose () {
- this.dialogVisible = false;
- getVideoSrc({ camera: 0, action: 'stop' })
-
- getVideoSrc({ camera: 1, action: 'stop' })
-
- getVideoSrc({ camera: 2, action: 'stop' })
-
- getVideoSrc({ camera: 4, action: 'stop' })
- },
-
dialogBeforeClose () {
this.dialogVisible = false
+
+ this.$refs.videoIframe.contentWindow.closeVideo()
+
}
},
@@ -544,50 +424,6 @@
}
}
}
- }
-}
-
-.car-video-box {
- .container {
- position: relative;
- width: 100%;
- height: 100%;
- display: flex;
- flex-wrap: wrap;
- video {
- flex: 1;
- width: 50%;
- height: 50%;
- object-fit: fill;
- }
- // #videoElementOne {
- // position: absolute;
- // top: 0;
- // left: 0;
- // width: 50%;
- // height: 50%;
- // }
- // #videoElementTwo {
- // position: absolute;
- // top: 0;
- // right: 0;
- // width: 50%;
- // height: 50%;
- // }
- // #videoElementThree {
- // position: absolute;
- // bottom: 0;
- // left: 0;
- // width: 50%;
- // height: 50%;
- // }
- // #videoElementFour {
- // position: absolute;
- // bottom: 0;
- // right: 0;
- // width: 50%;
- // height: 50%;
- // }
}
}
</style>
diff --git a/src/views/map/carGps copy.vue b/src/views/map/carGps1.vue
similarity index 62%
rename from src/views/map/carGps copy.vue
rename to src/views/map/carGps1.vue
index f34b320..96206cc 100644
--- a/src/views/map/carGps copy.vue
+++ b/src/views/map/carGps1.vue
@@ -2,7 +2,7 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-11-17 09:20:19
+ * @Last Modified time: 2021-11-26 17:27:56
* menu-name 押运人员定位
*/
<template>
@@ -122,24 +122,38 @@
</div>
</el-card>
- <el-dialog title=""
+ <el-dialog title="视频监控"
:modal='false'
:visible.sync="dialogVisible"
:before-close="dialogBeforeClose"
:close-on-click-modal='false'
+ @closed="videoClose"
class="car-video-box">
- <iframe src="/carVideo/parent.html"
- ref="videoIframe"
- frameborder="0"></iframe>
+ <div class="container"
+ v-loading="videoLoading">
+ <video id="videoElementOne"
+ controls="controls"></video>
+ <video id="videoElementTwo"
+ controls="controls"></video>
+ <video id="videoElementThree"
+ controls="controls"></video>
+ <video id="videoElementFour"
+ controls="controls"></video>
+ </div>
</el-dialog>
</el-col>
</el-row>
</template>
<script>
-import { getCarList, getPosition, getTrack } from "@/api/map/car";
+import { getCarList, getPosition, getNewPosition, getTrack, getVideoSrc, getNewCarTark } from "@/api/map/car";
+import axios from 'axios';
import carPng from "@/assets/img/car.png";
+
+import flvjs from 'flv.js/dist/flv.min.js';
+
+const d3 = require('d3-dsv');
export default {
data () {
@@ -156,16 +170,13 @@
detailObj: {},
dialogVisible: false,
map: null,
+ videoLoading: true
};
},
created () {
this.getList();
},
mounted () {
-
-
-
-
},
methods: {
@@ -192,14 +203,17 @@
},
positionClick (val) {
- getPosition({ type: 2, workerId: val.id }).then((result) => {
+ // console.log(val)
+
+ getNewPosition({ imei: "861636056082414" }).then((result) => {
var res = result.data.data;
+
if (JSON.stringify(res) != "{}") {
this.$refs.modalForm.addEntitys(
{
- LGTD: 115.86,
- LTTD: 28.71,
- name: "枪支位置",
+ LGTD: res.x,
+ LTTD: res.y,
+ name: "车辆位置",
},
carPng,
0.8,
@@ -239,6 +253,12 @@
this.disposeTime(startTime.getMinutes()) +
":" +
this.disposeTime(startTime.getSeconds());
+
+ const startTWO =
+ startTime.getFullYear() + '' +
+ this.disposeTime(startTime.getMonth() + 1) + '' +
+ this.disposeTime(startTime.getDate());
+
if (this.trackTime.length == 1) {
this.$message({ message: "请选择结束时间", duration: 2000 });
return;
@@ -257,22 +277,48 @@
":" +
this.disposeTime(endTime.getSeconds());
+ const endTWO =
+ endTime.getFullYear() + '' +
+ this.disposeTime(endTime.getMonth() + 1) + '' +
+ this.disposeTime(endTime.getDate());
+
getTrack({
workerId: this.detailObj.id,
type: 2,
startTime: start,
endTime: end,
}).then((res) => {
- var result = res.data.data;
- if (result.length > 1) {
- let arr = [];
- result.forEach((item) => {
- arr.push([Number(item.longitude), Number(item.latitude)]);
- });
+ getNewCarTark({
+ beginTime: startTWO,
+ endTime: endTWO,
+ rectify: 0,
+ callbackId: 123
+ }).then(res => {
+ axios.get('http://s16s652780.51mypc.cn/car/' + res.data.data).then(result => {
+ var ret = d3.csvParse(result.data)
- this.$refs.modalForm.addLines(arr);
- }
+ let arr = [];
+ ret.forEach((item, index) => {
+ if (index < ret.length - 1) {
+ arr.push([Number(item.x), Number(item.y)]);
+ }
+
+ })
+
+ this.$refs.modalForm.addLines(arr);
+ })
+ })
+ // var result = res.data.data;
+ // if (result.length > 1) {
+ // let arr = [];
+
+ // result.forEach((item) => {
+ // arr.push([Number(item.longitude), Number(item.latitude)]);
+ // });
+
+ // this.$refs.modalForm.addLines(arr);
+ // }
});
},
// 处理时间补零操作
@@ -305,20 +351,101 @@
if (cont != undefined) {
that.dialogVisible = true
+ var oneflag = false, twoflag = false, threefalse = false, fourfalse = false;
+ getVideoSrc({ camera: 0, action: 'start' }).then(res => {
+ oneflag = true;
+ if (twoflag == true && threefalse == true && fourfalse == true) {
+ that.videoLoading = false;
+ }
+ if (flvjs.isSupported()) {
+ var videoElement = document.getElementById('videoElementOne')
+ var flvPlayer = flvjs.createPlayer({
+ // isLive: true,
+ // hasAudio: false,
+ type: 'flv',
+ url: res.data.data.live_url
+ })
+ flvPlayer.attachMediaElement(videoElement)
+ flvPlayer.load()
+ flvPlayer.play()
+ }
+ })
- setTimeout(() =>{
- that.$refs.videoIframe.contentWindow.startVideo()
- },3000);
+ getVideoSrc({ camera: 1, action: 'start' }).then(res => {
+ twoflag = true;
+ if (oneflag == true && threefalse == true && fourfalse == true) {
+ that.videoLoading = false;
+ }
+ if (flvjs.isSupported()) {
+ var videoElement = document.getElementById('videoElementTwo')
+ var flvPlayer = flvjs.createPlayer({
+ // isLive: true,
+ // hasAudio: false,
+ type: 'flv',
+ url: res.data.data.live_url
+ })
+ flvPlayer.attachMediaElement(videoElement)
+ flvPlayer.load()
+ flvPlayer.play()
+ }
+ })
+
+ getVideoSrc({ camera: 2, action: 'start' }).then(res => {
+ threefalse = true;
+ if (oneflag == true && twoflag == true && fourfalse == true) {
+ that.videoLoading = false;
+ }
+ if (flvjs.isSupported()) {
+ var videoElement = document.getElementById('videoElementThree')
+ var flvPlayer = flvjs.createPlayer({
+ // isLive: true,
+ // hasAudio: false,
+ type: 'flv',
+ url: res.data.data.live_url
+ })
+ flvPlayer.attachMediaElement(videoElement)
+ flvPlayer.load()
+ flvPlayer.play()
+ }
+ })
+
+ getVideoSrc({ camera: 4, action: 'start' }).then(res => {
+ fourfalse = true;
+ if (oneflag == true && twoflag == true && threefalse == true) {
+ that.videoLoading = false;
+ }
+ if (flvjs.isSupported()) {
+ var videoElement = document.getElementById('videoElementFour')
+ var flvPlayer = flvjs.createPlayer({
+ // isLive: true,
+ // hasAudio: false,
+ type: 'flv',
+ url: res.data.data.live_url
+ })
+ flvPlayer.attachMediaElement(videoElement)
+ flvPlayer.load()
+ flvPlayer.play()
+ }
+ })
+
}
})
},
- dialogBeforeClose() {
- this.dialogVisible = false
+ videoClose () {
+ this.dialogVisible = false;
+ getVideoSrc({ camera: 0, action: 'stop' })
- this.$refs.videoIframe.contentWindow.closeVideo()
+ getVideoSrc({ camera: 1, action: 'stop' })
+ getVideoSrc({ camera: 2, action: 'stop' })
+
+ getVideoSrc({ camera: 4, action: 'stop' })
+ },
+
+ dialogBeforeClose () {
+ this.dialogVisible = false
}
},
@@ -419,4 +546,48 @@
}
}
}
+
+.car-video-box {
+ .container {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ display: flex;
+ flex-wrap: wrap;
+ video {
+ flex: 1;
+ width: 50%;
+ height: 50%;
+ object-fit: fill;
+ }
+ // #videoElementOne {
+ // position: absolute;
+ // top: 0;
+ // left: 0;
+ // width: 50%;
+ // height: 50%;
+ // }
+ // #videoElementTwo {
+ // position: absolute;
+ // top: 0;
+ // right: 0;
+ // width: 50%;
+ // height: 50%;
+ // }
+ // #videoElementThree {
+ // position: absolute;
+ // bottom: 0;
+ // left: 0;
+ // width: 50%;
+ // height: 50%;
+ // }
+ // #videoElementFour {
+ // position: absolute;
+ // bottom: 0;
+ // right: 0;
+ // width: 50%;
+ // height: 50%;
+ // }
+ }
+}
</style>
diff --git a/src/views/map/gunGps.vue b/src/views/map/gunGps.vue
index 0a0b251..436f038 100644
--- a/src/views/map/gunGps.vue
+++ b/src/views/map/gunGps.vue
@@ -2,383 +2,396 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-11-17 09:21:20
+ * @Last Modified time: 2021-12-02 17:48:21
* menu-name 押运人员定位
*/
<template>
- <el-row class="morpheus-map-box">
- <el-col :span="24">
- <el-card>
- <div class="card-body">
- <div>
- <Map ref="modalForm" />
- </div>
- <div>
- <div class="data-table map-people-table" v-show="!detailFlag">
- <el-table
- :data="tableData"
- style="width: 100%"
- v-loading="loading"
- >
- <el-table-column
- align="center"
- prop="gunMode"
- label="枪支类型"
- width="136"
- >
- </el-table-column>
+ <el-row class="morpheus-map-box">
+ <el-col :span="24">
+ <el-card>
+ <div class="card-body">
+ <div>
+ <Map ref="modalForm" />
+ </div>
+ <div>
+ <div class="data-table map-people-table"
+ v-show="!detailFlag">
+ <el-table :data="tableData"
+ style="width: 100%"
+ v-loading="loading">
+ <el-table-column align="center"
+ prop="gunMode"
+ label="枪支型号"
+ width="136">
+ </el-table-column>
- <el-table-column
- align="center"
- prop="personInCharge"
- label="责任人"
- >
- </el-table-column>
+ <el-table-column align="center"
+ prop="gunCardNumber"
+ label="枪号">
+ </el-table-column>
- <el-table-column label="操作" width="136" align="center">
- <template slot-scope="scope">
- <el-button
- @click="positionClick(scope.row)"
- type="text"
- size="small"
- title="定位"
- >
- <i class="el-icon-location"></i>
- </el-button>
- <el-button
- @click="detailsClick(scope.row)"
- type="text"
- size="small"
- title="轨迹"
- >
- <i class="el-icon-position"></i>
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- <div ref="tablePagination">
- <el-pagination
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- background
- :page-sizes="[10, 30, 50, 100]"
- layout="sizes, prev, pager, next"
- :current-page="page.currentPage"
- :page-size="page.pageSize"
- :pager-count="3"
- :total="page.total"
- >
- </el-pagination>
- </div>
- </div>
- <div class="track-box" v-show="detailFlag">
- <div>
- <el-button @click="goOut" type="text" size="small" title="轨迹">
- <i class="el-icon-back"></i>
- </el-button>
+ <el-table-column label="操作"
+ width="136"
+ align="center">
+ <template slot-scope="scope">
+ <el-button @click="positionClick(scope.row)"
+ type="text"
+ size="small"
+ title="定位">
+ <i class="el-icon-location"></i>
+ </el-button>
+ <el-button @click="detailsClick(scope.row)"
+ type="text"
+ size="small"
+ title="轨迹">
+ <i class="el-icon-position"></i>
+ </el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div ref="tablePagination">
+ <el-pagination @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ background
+ :page-sizes="[10, 30, 50, 100]"
+ layout="sizes, prev, pager, next"
+ :current-page="page.currentPage"
+ :page-size="page.pageSize"
+ :pager-count="3"
+ :total="page.total">
+ </el-pagination>
+ </div>
+ </div>
+ <div class="track-box"
+ v-show="detailFlag">
+ <div>
+ <el-button @click="goOut"
+ type="text"
+ size="small"
+ title="轨迹">
+ <i class="el-icon-back"></i>
+ </el-button>
- 详细资料及轨迹查询
- </div>
- <ul>
- <li>
- <div>枪支类型:</div>
- <div>{{ detailObj.gunMode }}</div>
- </li>
+ 详细资料及轨迹查询
+ </div>
+ <ul>
+ <li>
+ <div>枪支类型:</div>
+ <div>{{ detailObj.gunMode }}</div>
+ </li>
- <li>
- <div>责任人:</div>
- <div>{{ detailObj.personInCharge }}</div>
- </li>
+ <li>
+ <div>枪号:</div>
+ <div>{{ detailObj.gunCardNumber }}</div>
+ </li>
- <li>
- <div>发证日期:</div>
- <div>{{ detailObj.issueTime }}</div>
- </li>
+ <li>
+ <div>护卫员:</div>
+ <div>{{ detailObj.personInCharge }}</div>
+ </li>
- <li>
- <div>有效日期:</div>
- <div>{{ detailObj.validTime }}</div>
- </li>
+ <li>
+ <div>选择时间:</div>
+ <div class="datetime">
+ <el-date-picker v-model="trackTime"
+ type="datetimerange"
+ range-separator="至"
+ start-placeholder="开始日期"
+ size="mini"
+ :editable="false"
+ end-placeholder="结束日期">
+ </el-date-picker>
+ </div>
+ </li>
- <li>
- <div>发证单位:</div>
- <div>{{ detailObj.issueUnit }}</div>
- </li>
-
- <li>
- <div>用枪编号:</div>
- <div>{{ detailObj.cardNumber }}</div>
- </li>
-
- <li>
- <div>选择时间:</div>
- <div class="datetime">
- <el-date-picker
- v-model="trackTime"
- type="datetimerange"
- range-separator="至"
- start-placeholder="开始日期"
- size="mini"
- :editable="false"
- end-placeholder="结束日期"
- >
- </el-date-picker>
- </div>
- </li>
-
- <li>
- <el-button type="text" @click="lookTrack">
- 查看轨迹
- </el-button>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </el-card>
- </el-col>
- </el-row>
+ <li>
+ <el-button type="text"
+ @click="lookTrack">
+ 查看轨迹
+ </el-button>
+ </li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
</template>
<script>
-import { getGunList, getPosition, getTrack } from "@/api/map/gun";
+import { getGunList, getTrack } from "@/api/map/gun";
import gunPng from "@/assets/img/gun.png";
export default {
- data() {
- return {
- tableData: [],
- page: {
- pageSize: 10,
- currentPage: 1,
- total: 0,
- },
- detailFlag: false,
- loading: true,
- trackTime: [],
- detailObj: {},
- };
- },
- created() {
- this.getList();
- },
- mounted() {},
- methods: {
- getList() {
- getGunList({
- current: this.page.currentPage,
- size: this.page.pageSize,
- }).then((res) => {
- var data = res.data.data;
- this.tableData = data.records;
- this.page.total = data.total;
- this.loading = false;
- });
- },
- handleSizeChange(val) {
- this.page.pageSize = val;
- this.loading = true;
- this.getList();
- },
- handleCurrentChange(val) {
- this.page.currentPage = val;
- this.loading = true;
- this.getList();
- },
-
- positionClick(val) {
- getPosition({ type: 3, workerId: val.id }).then((result) => {
- var res = result.data.data;
- if (JSON.stringify(res) != "{}") {
- this.$refs.modalForm.addEntitys(
- {
- LGTD: 115.86,
- LTTD: 28.71,
- name: "枪支位置",
+ data () {
+ return {
+ tableData: [],
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
},
- gunPng,
- 0.8,
- "gunlayer",
- "gunAddlayer"
- );
- }
- });
+ detailFlag: false,
+ loading: true,
+ trackTime: [],
+ detailObj: {},
+ };
},
-
- detailsClick(row) {
- this.detailFlag = true;
- this.detailObj = {
- gunMode: row.gunMode,
- personInCharge: row.personInCharge,
- issueTime: row.issueTime,
- validTime: row.validTime,
- issueUnit: row.issueUnit,
- cardNumber: row.cardNumber,
- id: row.id,
- };
+ created () {
+ this.getList();
},
+ mounted () { },
+ methods: {
+ getList () {
+ getGunList({
+ current: this.page.currentPage,
+ size: this.page.pageSize,
+ }).then((res) => {
+ var data = res.data.data;
+ this.tableData = data.records;
+ this.page.total = data.total;
+ this.loading = false;
+ });
+ },
+ handleSizeChange (val) {
+ this.page.pageSize = val;
+ this.loading = true;
+ this.getList();
+ },
+ handleCurrentChange (val) {
+ this.page.currentPage = val;
+ this.loading = true;
+ this.getList();
+ },
- lookTrack() {
- if (this.trackTime.length == 0) {
- this.$message({ message: "请选择开始时间", duration: 2000 });
- return;
- }
- const startTime = new Date(this.trackTime[0]);
- const start =
- startTime.getFullYear() +
- "-" +
- this.disposeTime(startTime.getMonth() + 1) +
- "-" +
- this.disposeTime(startTime.getDate()) +
- " " +
- this.disposeTime(startTime.getHours()) +
- ":" +
- this.disposeTime(startTime.getMinutes()) +
- ":" +
- this.disposeTime(startTime.getSeconds());
- if (this.trackTime.length == 1) {
- this.$message({ message: "请选择结束时间", duration: 2000 });
- return;
- }
- const endTime = new Date(this.trackTime[1]);
- const end =
- endTime.getFullYear() +
- "-" +
- this.disposeTime(endTime.getMonth() + 1) +
- "-" +
- this.disposeTime(endTime.getDate()) +
- " " +
- this.disposeTime(endTime.getHours()) +
- ":" +
- this.disposeTime(endTime.getMinutes()) +
- ":" +
- this.disposeTime(endTime.getSeconds());
+ positionClick (val) {
+ var timestamp = Date.parse(new Date());
- getTrack({
- workerId: this.detailObj.id,
- type: 3,
- startTime: start,
- endTime: end,
- }).then((res) => {
- var result = res.data.data;
- if (result.length > 1) {
- let arr = [];
+ var serverDate = new Date(timestamp);
- result.forEach((item) => {
- arr.push([Number(item.longitude), Number(item.latitude)]);
- });
+ const start =
+ (serverDate.getFullYear() - 5) +
+ "-" +
+ this.disposeTime(serverDate.getMonth() + 1) +
+ "-" +
+ this.disposeTime(serverDate.getDate()) +
+ " " +
+ this.disposeTime(serverDate.getHours()) +
+ ":" +
+ this.disposeTime(serverDate.getMinutes()) +
+ ":" +
+ this.disposeTime(serverDate.getSeconds());
- this.$refs.modalForm.addLines(arr);
- }
- });
+
+ const end =
+ serverDate.getFullYear() +
+ "-" +
+ this.disposeTime(serverDate.getMonth() + 1) +
+ "-" +
+ this.disposeTime(serverDate.getDate()) +
+ " " +
+ this.disposeTime(serverDate.getHours()) +
+ ":" +
+ this.disposeTime(serverDate.getMinutes()) +
+ ":" +
+ this.disposeTime(serverDate.getSeconds());
+
+
+ getTrack({
+ idCardNo: val.cardNo,
+ startTime: "2020-05-02",
+ endTime: "2020-05-03",
+ }).then((res) => {
+
+ var result = res.data.data.res;
+
+ if (JSON.stringify(result) != "{}") {
+ var array = result.sort(function (a, b) {
+ return a['dwsj'] < b['dwsj'] ? 1 : -1
+ })
+
+ this.$refs.modalForm.addEntitys(
+ {
+ LGTD: Number(array[0].dwjd),
+ LTTD: Number(array[0].dwwd),
+ name: "枪支位置",
+ },
+ gunPng,
+ 0.8,
+ "gunlayer",
+ "gunAddlayer"
+ );
+ }
+ });
+ },
+
+ detailsClick (row) {
+ this.detailFlag = true;
+ this.detailObj = {
+ gunMode: row.gunMode,
+ personInCharge: row.personInCharge,
+ issueTime: row.issueTime,
+ validTime: row.validTime,
+ issueUnit: row.issueUnit,
+ cardNumber: row.cardNumber,
+ id: row.id,
+ };
+ },
+
+ lookTrack () {
+ if (this.trackTime.length == 0) {
+ this.$message({ message: "请选择开始时间", duration: 2000 });
+ return;
+ }
+ const startTime = new Date(this.trackTime[0]);
+ const start =
+ startTime.getFullYear() +
+ "-" +
+ this.disposeTime(startTime.getMonth() + 1) +
+ "-" +
+ this.disposeTime(startTime.getDate());
+ if (this.trackTime.length == 1) {
+ this.$message({ message: "请选择结束时间", duration: 2000 });
+ return;
+ }
+ const endTime = new Date(this.trackTime[1]);
+ const end =
+ endTime.getFullYear() +
+ "-" +
+ this.disposeTime(endTime.getMonth() + 1) +
+ "-" +
+ this.disposeTime(endTime.getDate());
+
+ getTrack({
+ idCardNo: this.detailObj.cardNo,
+ startTime: start,
+ endTime: end,
+ }).then((res) => {
+ var result = res.data.data.res;
+ if (result.length > 1) {
+ let arr = [];
+
+ var array = result.sort(function (a, b) {
+ return a['dwsj'] > b['dwsj'] ? 1 : -1
+ })
+
+ array.forEach((item) => {
+ arr.push([Number(item.dwjd), Number(item.dwwd)]);
+ });
+
+ this.$refs.modalForm.addLines(arr);
+ }
+ });
+
+ },
+ // 处理时间补零操作
+ disposeTime (s) {
+ return s < 10 ? "0" + s : s;
+ },
+
+ goOut () {
+ this.detailFlag = !this.detailFlag;
+ this.$refs.modalForm.clearLine();
+ this.trackTime = [];
+ },
},
- // 处理时间补零操作
- disposeTime(s) {
- return s < 10 ? "0" + s : s;
+ destroyed () {
+ window.ol2d.removeLayer(this.peopleAddlayer);
},
-
- goOut() {
- this.detailFlag = !this.detailFlag;
- this.$refs.modalForm.clearLine();
- this.trackTime = [];
- },
- },
- destroyed() {
- window.ol2d.removeLayer(this.peopleAddlayer);
- },
};
</script>
<style lang="scss" scoped>
.data-table {
- border: 1px solid transparent !important;
- box-shadow: 3px 3px 15px -2px rgb(0, 0, 0) !important;
+ border: 1px solid transparent !important;
+ box-shadow: 3px 3px 15px -2px rgb(0, 0, 0) !important;
}
.card-body {
- display: flex;
- & > div:first-child {
- flex: 8;
- }
-
- & > div:last-child {
- position: relative;
-
- flex: 3;
- & > div {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
-
- & > .el-table {
- height: calc(100% - 34px);
- }
+ display: flex;
+ & > div:first-child {
+ flex: 8;
}
- .track-box {
- & > div {
+ & > div:last-child {
position: relative;
- height: 42px;
- line-height: 42px;
- text-align: center;
- color: #fff;
- border-bottom: 1px solid #fff;
- .el-button {
- padding: 0 !important;
- position: absolute;
- top: 4px;
- left: 4px;
- width: 42px;
- height: 28px;
- line-height: 28px;
- }
- }
- ul {
- margin: 0;
- padding: 0px;
- }
- li {
- margin: 0;
- padding: 0 4px;
- list-style: none;
- height: 42px;
- line-height: 42px;
- display: flex;
- color: #fff;
- border-bottom: 1px solid #fff;
+
+ flex: 3;
& > div {
- text-align: center;
- }
- & > div:first-child {
- flex: 2;
- }
- & > div:last-child {
- flex: 6;
- & > div {
- width: 100% !important;
- }
- }
- }
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
- li:last-child {
- text-align: center;
- position: relative;
- .el-button {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- margin: auto;
- padding: 0 !important;
- width: 68px;
- height: 32px;
- line-height: 32px;
+ & > .el-table {
+ height: calc(100% - 34px);
+ }
}
- }
+
+ .track-box {
+ & > div {
+ position: relative;
+ height: 42px;
+ line-height: 42px;
+ text-align: center;
+ color: #fff;
+ border-bottom: 1px solid #fff;
+ .el-button {
+ padding: 0 !important;
+ position: absolute;
+ top: 4px;
+ left: 4px;
+ width: 42px;
+ height: 28px;
+ line-height: 28px;
+ }
+ }
+ ul {
+ margin: 0;
+ padding: 0px;
+ }
+ li {
+ margin: 0;
+ padding: 0 4px;
+ list-style: none;
+ height: 42px;
+ line-height: 42px;
+ display: flex;
+ color: #fff;
+ border-bottom: 1px solid #fff;
+ & > div {
+ text-align: center;
+ }
+ & > div:first-child {
+ flex: 2;
+ }
+ & > div:last-child {
+ flex: 6;
+ & > div {
+ width: 100% !important;
+ }
+ }
+ }
+
+ li:last-child {
+ text-align: center;
+ position: relative;
+ .el-button {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ margin: auto;
+ padding: 0 !important;
+ width: 68px;
+ height: 32px;
+ line-height: 32px;
+ }
+ }
+ }
}
- }
}
</style>
diff --git a/src/views/map/peopleGps.vue b/src/views/map/peopleGps.vue
index dc43f21..273ac89 100644
--- a/src/views/map/peopleGps.vue
+++ b/src/views/map/peopleGps.vue
@@ -2,7 +2,7 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-11-25 13:48:23
+ * @Last Modified time: 2021-11-30 17:12:19
* menu-name 押运人员定位
*/
<template>
@@ -131,7 +131,7 @@
</template>
<script>
-import { getPeopleList, getPosition, getTrack, getNewPeople, getNewTark } from "@/api/map/people";
+import { getPeopleList, getTrack, getNewPeople } from "@/api/map/people";
import peoplePng from "@/assets/img/people.png";
export default {
@@ -161,6 +161,8 @@
getPeopleList({
current: this.page.currentPage,
size: this.page.pageSize,
+ deptId: '1460129345988239362',
+ type: 1
}).then((res) => {
var data = res.data.data;
@@ -188,46 +190,25 @@
},
positionClick (val) {
- getPosition({ type: 1, workerId: val.id }).then((result) => {
- getNewPeople().then(res => {
-
- if (JSON.stringify(res.data) != "{}") {
- var arr = res.data.sort(function (a, b) {
- return a['date'] < b['date'] ? 1 : -1
- })
-
- this.$refs.modalForm.addEntitys(
- {
- LGTD: arr[0].gis_jd,
- LTTD: arr[0].gis_wd,
- name: "人员位置",
- },
- peoplePng,
- 0.5,
- "peoplelayer",
- "peopleAddlayer"
- );
- }
- })
-
-
- // var res = result.data.data;
- // if (JSON.stringify(res) != "{}") {
- // this.$refs.modalForm.addEntitys(
- // {
- // LGTD: res.longitude,
- // LTTD: res.latitude,
- // name: "人员位置",
- // },
- // peoplePng,
- // 0.5,
- // "peoplelayer",
- // "peopleAddlayer"
- // );
- // }
-
+ getNewPeople({ type: 1, workerId: val.id }).then((result) => {
+ var res = result.data.data;
+ if (JSON.stringify(res) != "{}") {
+ var csGps = window.coordtransform.bd09togcj02(Number(res.longitude), Number(res.latitude));
+ this.$refs.modalForm.addEntitys(
+ {
+ LGTD: csGps[0],
+ LTTD: csGps[1],
+ name: "人员位置",
+ },
+ peoplePng,
+ 0.5,
+ "peoplelayer",
+ "peopleAddlayer"
+ );
+ }
});
+
},
detailsClick (row) {
@@ -280,38 +261,25 @@
getTrack({
workerId: this.detailObj.id,
type: 1,
- startTime: start,
+ beginTime: start,
endTime: end,
- }).then((result) => {
+ }).then((res) => {
+ var result = res.data.data;
- getNewTark().then(res => {
-
- if (JSON.stringify(res.data.track) != "{}") {
-
- if (res.data.track.length > 1) {
- let arr = [];
-
- res.data.track.forEach((item) => {
- arr.push([Number(item.gis_jd), Number(item.gis_wd)]);
- });
-
- this.$refs.modalForm.addLines(arr);
- }
-
- }
-
+ var array = result.sort(function (a, b) {
+ return a['record_time'] > b['record_time'] ? 1 : -1
})
- // var result = res.data.data;
- // if (result.length > 1) {
- // let arr = [];
+ if (array.length > 1) {
+ let arr = [];
- // result.forEach((item) => {
- // arr.push([Number(item.longitude), Number(item.latitude)]);
- // });
+ array.forEach((item) => {
+ var csGps = window.coordtransform.bd09togcj02(Number(item.longitude), Number(item.latitude));
+ arr.push([csGps[0], csGps[1]]);
+ });
- // this.$refs.modalForm.addLines(arr);
- // }
+ this.$refs.modalForm.addLines(arr);
+ }
});
},
// 处理时间补零操作
diff --git a/src/views/onSiteInspection/company.vue b/src/views/onSiteInspection/company.vue
index 0e6557c..1930e23 100644
--- a/src/views/onSiteInspection/company.vue
+++ b/src/views/onSiteInspection/company.vue
@@ -52,8 +52,7 @@
remove,
} from "@/api/onSiteInspection/company";
import { mapGetters } from "vuex";
-// import { datasing } from "@api/qualificationExamination/datasignQualificationExamination";
-import { datasing } from "./company";
+import { getToken } from "@/util/auth";
import Qs from "qs";
export default {
@@ -234,29 +233,11 @@
jurisdiction: this.userInfo.jurisdiction,
};
//导出
- // if (
- // this.userInfo.role_name == "保安公司管理员" ||
- // this.userInfo.role_name == "保安"
- // ) {
- // //如果是保安公司管理员
- // data["deptId"] = this.userInfo.dept_id;
- // }
- // if (this.userInfo.role_name == "培训公司管理员") {
- // //如果是培训公司管理员
- // data["trainUnitId"] = this.userInfo.dept_id;
- // }
- // data["examType"] = 2;
//序列号url形式,用&拼接
data = Qs.stringify(data);
- window.open(`/api/coinspect/export-coinspect?` + data);
- })
- .catch((action) => {
- // this.$message({
- // type: 'info',
- // message: action === 'cancel'
- // ? '放弃保存并离开页面'
- // : '停留在当前页面'
- // })
+ window.open(`/api/coinspect/export-coinspect?${
+ this.website.tokenHeader
+ }=${getToken()}&` + data);
});
},
getStartTime() {
diff --git a/src/views/onSiteInspection/data.js b/src/views/onSiteInspection/data.js
index 21bf4ad..2aecf04 100644
--- a/src/views/onSiteInspection/data.js
+++ b/src/views/onSiteInspection/data.js
@@ -1,26 +1,21 @@
-var DIC = [
- {
- label: '招聘中',
- value: 1,
- }, {
- label: '停止招聘',
- value: 2,
- }
-]
-var DIC1 = [
- {
- label: '拥有',
- value: 1,
- }, {
- label: '未拥有',
- value: 2,
- }
-]
+var DIC = [{
+ label: '招聘中',
+ value: 1,
+}, {
+ label: '停止招聘',
+ value: 2,
+}]
+var DIC1 = [{
+ label: '拥有',
+ value: 1,
+}, {
+ label: '未拥有',
+ value: 2,
+}]
-var w = 160
- , s = 12;
-export var column = [
- {
+var w = 160,
+ s = 12;
+export var column = [{
label: "id",
prop: "id",
hide: true,
@@ -51,11 +46,11 @@
// addDisplay: false
},
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
rules: [{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur"
}],
// addDisplay: true,
@@ -275,4 +270,4 @@
// trigger: "blur"
// }],
},
-]
+]
\ No newline at end of file
diff --git a/src/views/onSiteInspection/securityStaff.vue b/src/views/onSiteInspection/securityStaff.vue
index 886fe77..2b1fb32 100644
--- a/src/views/onSiteInspection/securityStaff.vue
+++ b/src/views/onSiteInspection/securityStaff.vue
@@ -52,7 +52,7 @@
remove,
} from "@/api/onSiteInspection/securityStaff";
import { mapGetters } from "vuex";
-import { datasing } from "./securityStaffdata";
+import { getToken } from "@/util/auth";
import Qs from "qs";
export default {
@@ -343,30 +343,12 @@
jurisdiction: this.userInfo.jurisdiction,
};
//导出
- // if (
- // this.userInfo.role_name == "保安公司管理员" ||
- // this.userInfo.role_name == "保安"
- // ) {
- // //如果是保安公司管理员
- // data["deptId"] = this.userInfo.dept_id;
- // }
- // if (this.userInfo.role_name == "培训公司管理员") {
- // //如果是培训公司管理员
- // data["trainUnitId"] = this.userInfo.dept_id;
- // }
- // data["examType"] = 2;
//序列号url形式,用&拼接
data = Qs.stringify(data);
- window.open(`/api/seinspect/export-seinspect?` + data);
+ window.open(`/api/seinspect/export-seinspect?${
+ this.website.tokenHeader
+ }=${getToken()}&` + data);
})
- .catch((action) => {
- // this.$message({
- // type: 'info',
- // message: action === 'cancel'
- // ? '放弃保存并离开页面'
- // : '停留在当前页面'
- // })
- });
},
getStartTime() {
if (
diff --git a/src/views/qualificationExamination/data.js b/src/views/qualificationExamination/data.js
index 21bf4ad..2aecf04 100644
--- a/src/views/qualificationExamination/data.js
+++ b/src/views/qualificationExamination/data.js
@@ -1,26 +1,21 @@
-var DIC = [
- {
- label: '招聘中',
- value: 1,
- }, {
- label: '停止招聘',
- value: 2,
- }
-]
-var DIC1 = [
- {
- label: '拥有',
- value: 1,
- }, {
- label: '未拥有',
- value: 2,
- }
-]
+var DIC = [{
+ label: '招聘中',
+ value: 1,
+}, {
+ label: '停止招聘',
+ value: 2,
+}]
+var DIC1 = [{
+ label: '拥有',
+ value: 1,
+}, {
+ label: '未拥有',
+ value: 2,
+}]
-var w = 160
- , s = 12;
-export var column = [
- {
+var w = 160,
+ s = 12;
+export var column = [{
label: "id",
prop: "id",
hide: true,
@@ -51,11 +46,11 @@
// addDisplay: false
},
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
rules: [{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur"
}],
// addDisplay: true,
@@ -275,4 +270,4 @@
// trigger: "blur"
// }],
},
-]
+]
\ No newline at end of file
diff --git a/src/views/qualificationExamination/registrationTrainingQuery.vue b/src/views/qualificationExamination/registrationTrainingQuery.vue
index 981f19a..e16e3d1 100644
--- a/src/views/qualificationExamination/registrationTrainingQuery.vue
+++ b/src/views/qualificationExamination/registrationTrainingQuery.vue
@@ -313,7 +313,7 @@
// overHidden: true,
// },
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptName",
// width: 70,
// search: true,
diff --git a/src/views/qualificationExamination/scoreInquiry.vue b/src/views/qualificationExamination/scoreInquiry.vue
index bca0d9a..fdc63c2 100644
--- a/src/views/qualificationExamination/scoreInquiry.vue
+++ b/src/views/qualificationExamination/scoreInquiry.vue
@@ -53,10 +53,9 @@
// remove,
// } from "@/api/regulatoryInformation/regulatoryInformation";
import { mapGetters } from "vuex";
-import { datasing } from "./dataqualificationExamination";
-// import { getList } from "@/api/qualificationExamination/qualificationExamination";
-import { getLisperexamScore } from "@/api/qualificationExamination/scoreInquiry";
import Qs from "qs";
+import { getToken } from "@/util/auth";
+import { getLisperexamScore } from "@/api/qualificationExamination/scoreInquiry";
export default {
data() {
return {
@@ -102,8 +101,7 @@
prop: "examName",
search: true,
searchSpan: 5,
- // slot: true,
- // display: false,
+ minWidth: 150,
},
{
// label: "考试开始时间",
@@ -123,11 +121,6 @@
trigger: "click",
},
],
- // slot: true,
- // display: false,
- // formatter: function (row, value) {
- // return (value = value + "%");
- // },
},
// {
// label: "考试结束时间",
@@ -151,12 +144,6 @@
// // formatter: function (row, value) {
// // return (value = value + "万元");
// // },
- // },
- // {
- // label: "考试类型",
- // prop: "examinationaddress",
- // // slot: true,
- // // display: false,
// },
{
label: "理论成绩",
@@ -226,8 +213,6 @@
value: 3,
},
],
- // slot: true,
- // display: false,
},
{
label: "是否发证",
@@ -236,16 +221,7 @@
},
],
},
- data: [
- // {
- // deptid: "江西众泰保安公司",
- // punishtype: 2,
- // punishreason: "非法施工",
- // punishresult: "没收全部非法所得财产,并罚款3W元",
- // punishtime: "2021-01-01",
- // punisnum: 110110110120,
- // },
- ],
+ data: [],
};
},
computed: {
@@ -279,9 +255,6 @@
})
.then(() => {
//获取查询条件
- // console.log(this.userInfo, 456);
- // console.log(this.query, 456);
- // return;
var data = {
startTime: this.query.startTime,
endTime: this.query.endTime,
@@ -291,30 +264,14 @@
jurisdiction: this.userInfo.jurisdiction,
};
//导出
- // if (
- // this.userInfo.role_name == "保安公司管理员" ||
- // this.userInfo.role_name == "保安"
- // ) {
- // //如果是保安公司管理员
- // data["deptId"] = this.userInfo.dept_id;
- // }
- // if (this.userInfo.role_name == "培训公司管理员") {
- // //如果是培训公司管理员
- // data["trainUnitId"] = this.userInfo.dept_id;
- // }
- // data["examType"] = 2;
//序列号url形式,用&拼接
data = Qs.stringify(data);
- window.open(`/api/examScore/export-examScore?` + data);
+ window.open(
+ `/api/examScore/export-examScore?${
+ this.website.tokenHeader
+ }=${getToken()}&` + data
+ );
})
- .catch((action) => {
- // this.$message({
- // type: 'info',
- // message: action === 'cancel'
- // ? '放弃保存并离开页面'
- // : '停留在当前页面'
- // })
- });
},
getStartTime() {
if (
@@ -336,65 +293,6 @@
}
return "";
},
-
- rowSave(row, done, loading) {
- adddata(row).then(
- () => {
- this.onLoad(this.page);
- this.$message({
- type: "success",
- message: "操作成功!",
- });
- done();
- },
- (error) => {
- window.console.log(error);
- loading();
- }
- );
- },
- rowUpdates(row, index, done, loading) {
- // console.log(42342);
- update(row).then(
- () => {
- this.onLoad(this.page);
- this.$message({
- type: "success",
- message: "操作成功!",
- });
- done();
- },
- (error) => {
- window.console.log(error);
- loading();
- }
- );
- },
- rowDel(row) {
- this.$confirm("确定将选择数据删除?", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(() => {
- return remove(row.id);
- })
- .then(() => {
- this.onLoad(this.page);
- this.$message({
- type: "success",
- message: "操作成功!",
- });
- });
- },
- // beforeOpen(done, type) {
- // if (["edit", "view"].includes(type)) {
- // getDetail(this.form.id).then((res) => {
- // this.form = res.data.data;
- // });
- // }
- // done();
- // },
searchReset() {
this.query = {};
this.onLoad(this.page);
@@ -424,7 +322,6 @@
this.onLoad(this.page, this.query);
},
onLoad(page, params = {}) {
- // this.loading = false;
this.loading = true;
getLisperexamScore(
page.currentPage,
@@ -448,65 +345,8 @@
}
this.$store.commit("setWindowSizeHeightAdd");
this.loading = false;
- // for (var k in d) {
- // if (d[k].qualified == 0) {
- // d[k].qualified = "通过";
- // } else if (d[k].qualified == 1) {
- // d[k].qualified = "不通过";
- // } else if (d[k].qualified == 2) {
- // d[k].qualified = "暂未录入实操成绩";
- // }
- // }
- // this.data = d;
- // console.log(this.data);
-
- // this.selectionClear();
});
},
- // onLoad(page, params = {}) {
- // // this.loading = false;
- // this.loading = true;
- // // getListJSON().then((res) => {
- // // axios
- // // .get(
- // // "../../api/qualificationExamination/signQualificationExamination.json"
- // // )
- // // .then((res) => {
- // // page.currentPage,
- // // page.pageSize,
- // // Object.assign(params, this.query)
- // if (datasing) {
- // var res = datasing;
- // console.log(res, "signQualificationExamination");
- // const data = res.data;
- // // this.page.total = data.total;
- // var d = data.records;
- // for (var k in d) {
- // d[k].examination_mx = "正常";
- // d[k].examination_type = "正常";
- // d[k]["carid"] = "370111198807051124";
- // d[k]["certificate"] = "拥有";
- // d[k]["reviewTime"] = "2021-02-21";
- // d[k]["results"] = "通过";
- // d[k]["onjob"] = "是";
- // }
- // this.data = d;
- // this.loading = false;
- // }
- // // this.selectionClear();
- // // });
- // },
-
- // 行单击
- // handleRowClick(row) {
- // // delete (row["name"]);
- // var obj = row;
- // obj["name"] = "保安公司详细资料";
- // this.$router.push({
- // path: `/securityCompany/index`,
- // query: obj,
- // });
- // },
},
};
</script>
diff --git a/src/views/regulatoryInformation/data.js b/src/views/regulatoryInformation/data.js
index 5d5661a..299cadd 100644
--- a/src/views/regulatoryInformation/data.js
+++ b/src/views/regulatoryInformation/data.js
@@ -1,26 +1,21 @@
-var DIC = [
- {
- label: '招聘中',
- value: 1,
- }, {
- label: '停止招聘',
- value: 2,
- }
-]
-var DIC1 = [
- {
- label: '拥有',
- value: 1,
- }, {
- label: '未拥有',
- value: 2,
- }
-]
+var DIC = [{
+ label: '招聘中',
+ value: 1,
+}, {
+ label: '停止招聘',
+ value: 2,
+}]
+var DIC1 = [{
+ label: '拥有',
+ value: 1,
+}, {
+ label: '未拥有',
+ value: 2,
+}]
-var w = 160
- , s = 12;
-export var column = [
- {
+var w = 160,
+ s = 12;
+export var column = [{
label: "id",
prop: "id",
hide: true,
@@ -44,11 +39,11 @@
// value: JSON.parse(window.localStorage.getItem("saber-userInfo")).content.dept_id
// },//上面不显示
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
rules: [{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur"
}],
// addDisplay: true,
@@ -268,4 +263,4 @@
// trigger: "blur"
// }],
},
-]
+]
\ No newline at end of file
diff --git a/src/views/securityCompany/armed.vue b/src/views/securityCompany/armed.vue
index efc7602..78b5e73 100644
--- a/src/views/securityCompany/armed.vue
+++ b/src/views/securityCompany/armed.vue
@@ -409,13 +409,12 @@
// 行单击
handleRowClick(row) {
- // delete (row["name"]);
var obj = row;
obj["name"] = "保安公司详细信息";
- // console.log(obj, "obj");
+ var data = JSON.stringify(obj);
this.$router.push({
path: `/securityCompany/index`,
- query: obj,
+ query: {data:data},
});
},
},
diff --git a/src/views/securityCompany/companyDetails copy.vue b/src/views/securityCompany/companyDetails copy.vue
new file mode 100644
index 0000000..e85892d
--- /dev/null
+++ b/src/views/securityCompany/companyDetails copy.vue
@@ -0,0 +1,752 @@
+/*
+ * @Author: Morpheus
+ * @Date: 2021-07-05 16:31:54
+ * @Last Modified by: Morpheus
+ * @Last Modified time: 2021-11-09 19:38:27
+ * menu-name 保安公司详细资料
+ */
+<template>
+ <el-row class="morpheus-box">
+ <el-col :span="24">
+ <el-card>
+ <div class="card-body">
+ <el-tabs v-model="activeName"
+ @tab-click="handleClick">
+ <el-tab-pane label="基本信息"
+ name="first">
+ <el-form :model="form"
+ label-position="right"
+ size="mini"
+ label-width="100px">
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="公司名称">
+ <el-input disabled="true"
+ v-model="form.enterprisename"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="法定代表人">
+ <el-input disabled="true"
+ v-model="form.representative"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="24">
+ <el-form-item label="注册地址">
+ <el-input disabled="true"
+ v-model="form.address"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="所属辖区">
+ <el-input disabled="true"
+ v-model="jurisdictionSee"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="所属行业">
+ <el-input disabled="true"
+ v-model="form.industry"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="登记机关">
+ <el-input disabled="true"
+ v-model="form.registration"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="公司类型">
+ <el-input disabled="true"
+ v-model="form.enterprises"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col span="24">
+ <el-form-item label="经营范围">
+ <el-input type="textarea"
+ disabled="true"
+ v-model="form.business"
+ resize="none"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-tab-pane>
+ <el-tab-pane label="工商信息"
+ name="second">
+ <el-form :model="form"
+ label-position="right"
+ size="mini"
+ label-width="100px">
+ <!-- <el-row>
+ <el-col span="12">
+ <el-form-item label="公司名称">
+ <el-input
+ disabled="true"
+ v-model="form.enterprisename"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="法定代表人">
+ <el-input
+ disabled="true"
+ v-model="form.representative"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row> -->
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="组织机构代码">
+ <el-input disabled="true"
+ v-model="form.organizationcode"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+
+ <el-col span="12">
+ <el-form-item label="注册资金">
+ <el-input disabled="true"
+ v-model="form.registeredcapital"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <!-- <el-col span="12">
+ <el-form-item label="实缴资金">
+ <el-input
+ disabled="true"
+ v-model="form.capital"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col> -->
+ <el-col span="12">
+ <el-form-item label="注册时间">
+ <el-input disabled="true"
+ v-model="form.establishtime"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="工商注册号">
+ <el-input disabled="true"
+ v-model="form.registrationnumber"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <!-- <el-row>
+ <el-col span="12">
+ <el-form-item label="工商注册号">
+ <el-input
+ disabled="true"
+ v-model="form.registrationnumber"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row> -->
+ </el-form>
+ </el-tab-pane>
+ <el-tab-pane label="投资人信息"
+ name="third">
+ <avue-crud class="company-box"
+ :option="investorOption"
+ :search.sync="investorSearch"
+ :table-loading="investorLoading"
+ :data="investorData"
+ ref="investorCrud"
+ :page.sync="investorPage"
+ @selection-change="investorSelectionChange"
+ @search-change="investorSearchChange"
+ @search-reset="investorSearchReset"
+ @current-change="investorCurrentChange"
+ @size-change="investorSizeChange"
+ @refresh-change="investorSizerefresh"
+ @on-load="investorOnLoad">
+ </avue-crud>
+ </el-tab-pane>
+ <el-tab-pane label="管理人信息"
+ name="fourth">
+ <avue-crud class="company-box"
+ :option="manageOption"
+ :search.sync="manageSearch"
+ :table-loading="manageLoading"
+ :data="manageData"
+ ref="manageCrud"
+ :page.sync="managePage"
+ @selection-change="manageSelectionChange"
+ @search-change="manageSearchChange"
+ @search-reset="manageSearchReset"
+ @current-change="manageCurrentChange"
+ @size-change="manageSizeChange"
+ @refresh-change="manageSizerefresh"
+ @on-load="manageOnLoad">
+ </avue-crud>
+ </el-tab-pane>
+ <el-tab-pane label="装备信息"
+ name="fifth">
+ <equipment :forms="forms"
+ v-if="seestaff"></equipment>
+ </el-tab-pane>
+ <el-tab-pane label="保安员信息"
+ name="sixth">
+ <staff :forms="forms"
+ v-if="seestaff"
+ :doit="seestaff2"></staff>
+ </el-tab-pane>
+ <el-tab-pane label="处罚信息"
+ name="seventh">
+ <punish :forms="forms"
+ v-if="seestaff"></punish>
+ </el-tab-pane>
+ <el-tab-pane label="服务对象"
+ name="eighth">
+ <service :form="forms"
+ v-if="seestaff"
+ :refresh="seestaff3"></service>
+ </el-tab-pane>
+ <!-- <el-tab-pane label="其他附件" name="eighth">
+ <enclosure :form="form"></enclosure>
+ </el-tab-pane> -->
+ <el-tab-pane label="营业执照"
+ name="ninth">
+ <div class="businessLicenses">
+ <el-container>
+ <el-main>
+ <div class="title"
+ v-if="businessLicenseUrl == ''">
+ 未上传营业执照
+ </div>
+ <img class="businessLicensess"
+ :src="businessLicenseUrl"
+ alt=""
+ v-else />
+ </el-main>
+ </el-container>
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="许可证"
+ name="tenth">
+ <div class="businessLicenses">
+ <el-container>
+ <el-main>
+ <div class="title"
+ v-if="licenceUrl == ''">
+ 未上传许可证
+ </div>
+ <img class="Licenses"
+ :src="licenceUrl"
+ alt=""
+ v-else />
+ </el-main>
+ </el-container>
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
+</template>
+
+<script>
+import {
+ manifestationList,
+ dispatchList,
+ honorchList,
+ trainList,
+ examinationList,
+ getInvestorList,
+ getManageList,
+} from "@/api/securityCompany/companyDetails";
+import equipment from "./computents/equipment.vue"; //装备管理
+import staff from "./computents/staff.vue"; //保安员信息
+import punish from "./computents/punish.vue"; //处罚信息
+import service from "./computents/service.vue"; //服务对象
+// import enclosure from "./computents/enclosure.vue"; //其他附件
+
+import { getList } from "@/api/securityCompany/security"; //保安公司
+
+export default {
+ components: {
+ equipment: equipment,
+ staff: staff,
+ punish: punish,
+ service: service,
+ // enclosure: enclosure,
+ },
+ data () {
+ var w = 160,
+ s = 12;
+ return {
+ businessLicenseUrl: "",
+ licenceUrl: "",
+
+ activeName: "first",
+ form: {},
+ manifestationData: [],
+ dispatchData: [],
+ honorchData: [],
+ trainData: [],
+ examinationData: [],
+
+ investorOption: {
+ // 操作栏多余按钮去除
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ menu: false,
+ selection: true,
+
+ align: "center",
+ height: "auto",
+ calcHeight: 270,
+ tip: false,
+ searchShow: false,
+ searchShowBtn: false,
+ searchMenuSpan: 4,
+ index: false,
+ viewBtn: true,
+ //dialogType: 'drawer',
+ dialogClickModal: false,
+ // 操作栏宽度
+ menuWidth: 156,
+ column: [
+ {
+ label: "id",
+ prop: "id",
+ hide: true,
+ addDisplay: false,
+ editDisplay: false,
+ },
+ {
+ label: "股东",
+ prop: "shareholder",
+ searchLabelWidth: 55,
+ search: true,
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "持股比例(%)",
+ prop: "shareholdingratio",
+ labelWidth: w,
+ span: s,
+ },
+ // {
+ // label: "最终受益股份",
+ // prop: "beneficial",
+ // },
+ {
+ label: "出资金额(万元)",
+ prop: "capital",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "出资时间",
+ prop: "capitaltime",
+ type: "date",
+ format: "yyyy-MM-dd hh:mm:ss",
+ valueFormat: "timestamp",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "身份证",
+ prop: "cardid",
+ labelWidth: w,
+ // span: s,
+ search: true,
+ },
+ {
+ label: "联系电话",
+ prop: "cell",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "统一社会信用代码",
+ prop: "creditcode",
+ hide: true,
+ addDisplay: false,
+ editDisplay: false,
+ labelWidth: w,
+ span: s,
+ },
+ ],
+ },
+ investorSearch: {},
+ investorLoading: true,
+ investorData: [],
+ investorPage: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ investorQuery: {},
+ investorSelectionList: [],
+
+ manageOption: {
+ // 操作栏多余按钮去除
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ selection: true,
+ searchShowBtn: false,
+ menu: false,
+
+ align: "center",
+ height: "auto",
+ calcHeight: 270,
+ tip: false,
+ searchShow: false,
+ searchMenuSpan: 4,
+ index: false,
+ viewBtn: true,
+ //dialogType: 'drawer',
+ dialogClickModal: false,
+ // 操作栏宽度
+ menuWidth: 156,
+ height: 600,
+ column: [
+ {
+ label: "管理人姓名",
+ prop: "name",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "职务",
+ prop: "post",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "身份证号",
+ prop: "cardid",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "联系电话",
+ prop: "cell",
+ slot: true,
+ display: false,
+ },
+ ],
+ },
+ manageSearch: {},
+ manageLoading: true,
+ manageData: [],
+ managePage: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ manageQuery: {},
+ manageSelectionList: [],
+
+ forms: {}, //防串数据
+ jurisdictionSee: "", //中文辖区
+
+ seestaff: false,
+ seestaff2: false,
+ seestaff3: true,
+ };
+ },
+ created () {
+ var flag = false,
+ i = 0,
+ ind = null,
+ that = this;
+
+ this.$store.state.tags.tagList.forEach((item, index) => {
+ if (
+ item.label == "保安公司详细资料" ||
+ item.label == "保安公司详细信息"
+ ) {
+ if (flag == false) {
+ ind = index;
+ flag = true;
+ }
+ i++;
+ }
+ });
+
+ if (i > 1) {
+ this.$store.state.tags.tagList.splice(ind, 1);
+ }
+
+ if (this.$route.query.fromSecunityGuardId) {
+ var page = {
+ currentPage: 1,
+ pageSize: 10,
+ },
+ params = { departmentid: this.$route.query.fromSecunityGuardId };
+ getList(page.currentPage, page.pageSize, params).then((res) => {
+ that.form = res.data.data.records[0];
+ this.jurisdictionSee = this.form.jurisdictionName;
+ that.forms = res.data.data.records[0];
+ that.seestaff = true;
+ that.businessLicenseUrl = res.data.data.records[0].businessLicense;
+ that.licenceUrl = res.data.data.records[0].licence;
+ });
+ // })
+ } else {
+ this.form = this.$route.query;
+ this.jurisdictionSee = this.form.$jurisdiction;
+ this.forms = this.$route.query;
+ this.seestaff = true;
+ this.getFromData({
+ currentPage: 1,
+ pageSize: 10,
+ });
+ }
+ },
+ methods: {
+ getFromData (page, params = {}) {
+ var that = this;
+ params["departmentid"] = this.forms.departmentid;
+ getList(page.currentPage, page.pageSize, params).then((res) => {
+ that.form = res.data.data.records[0];
+ this.businessLicenseUrl = res.data.data.records[0].businessLicense;
+ this.licenceUrl = res.data.data.records[0].licence;
+ });
+ },
+ // inspects(d, val) {
+ // var a = "";
+ // var doit = (d, val) => {
+ // for (let k in d) {
+ // if (d[k].key == val) {
+ // a = d[k].title;
+ // break;
+ // } else {
+ // if (d[k].hasChildren) {
+ // doit(d[k].children, val);
+ // } else {
+ // }
+ // }
+ // }
+ // };
+ // doit(d, val);
+ // // if (a == "") {
+ // // a = val;
+ // // }
+ // return a;
+ // },
+ handleClick (tab) {
+ if (tab.index == 2) {
+ this.investorSearchReset();
+ } else if (tab.index == 3) {
+ this.manageSearchReset();
+ } else if (tab.index == 5) {
+ this.seestaff2 = !this.seestaff2;
+ } else if (tab.index == 7) {
+ this.seestaff3 = !this.seestaff3;
+ } else {
+ this.getFromData({
+ currentPage: 1,
+ pageSize: 10,
+ });
+ }
+ // else if (tab.index == 3) {
+ // this.getHonorchData();
+ // } else if (tab.index == 4) {
+ // this.getTrainData();
+ // } else if (tab.index == 5) {
+ // this.getExaminationData();
+ // }
+ //
+ },
+ getManifestationData () {
+ manifestationList(this.forms.cardid).then((res) => {
+ this.manifestationData = res.data.data.records;
+ this.manifestationData.forEach((item) => {
+ item.name = this.forms.realName;
+ item.time = item.time.substring(0, 10);
+ });
+ });
+ },
+ getDispatchData () {
+ dispatchList(this.forms.cardid).then((res) => {
+ this.dispatchData = res.data.data.records;
+ });
+ },
+ getHonorchData () {
+ honorchList(this.forms.cardid).then((res) => {
+ this.honorchData = res.data.data.records;
+ });
+ },
+ getTrainData () {
+ trainList(this.forms.cardid).then((res) => {
+ this.trainData = res.data.data;
+
+ this.trainData.forEach((item) => {
+ if (item.sex == 1) {
+ item.sex = "男";
+ } else {
+ item.sex = "女";
+ }
+ });
+ });
+ },
+ getExaminationData () {
+ examinationList(this.forms.cardid).then((res) => {
+ this.examinationData = res.data.data;
+
+ this.examinationData.forEach((item) => {
+ if (item.stat == 1) {
+ item.stat = "不通过";
+ } else {
+ item.stat = "通过";
+ }
+ });
+ });
+ },
+ investorSizerefresh () {
+ this.investorOnLoad(this.investorPage, this.investorQuery);
+ },
+ investorOnLoad (page, params = {}) {
+ this.investorLoading = true;
+ params["deptId"] = this.form.departmentid;
+ getInvestorList(
+ page.currentPage,
+ page.pageSize,
+ Object.assign(params, this.investorQuery)
+ ).then((res) => {
+ const data = res.data.data;
+
+ this.investorPage.total = data.total;
+ this.investorData = data.records;
+ this.investorLoading = false;
+ this.$refs.investorCrud.refreshTable();
+ this.$refs.investorCrud.doLayout();
+ this.investorSelectionClear();
+ });
+ },
+ investorSelectionClear () {
+ this.investorSelectionList = [];
+ this.$refs.investorCrud.toggleSelection();
+ },
+ investorSelectionChange (list) {
+ this.investorSelectionList = list;
+ },
+ investorSearchChange (params, done) {
+ this.investorQuery = params;
+ this.investorPage.currentPage = 1;
+ this.investorOnLoad(this.investorPage, params);
+ done();
+ },
+ investorSearchReset () {
+ this.investorQuery = {};
+ this.investorOnLoad(this.investorPage);
+ },
+ investorCurrentChange (currentPage) {
+ this.investorPage.currentPage = currentPage;
+ },
+ investorSizeChange (pageSize) {
+ this.investorPage.pageSize = pageSize;
+ },
+ manageSizerefresh () {
+ this.manageOnLoad(this.managePage, this.manageQuery);
+ },
+ manageOnLoad (page, params = {}) {
+ this.manageLoading = true;
+ params["deptId"] = this.form.departmentid;
+ getManageList(
+ page.currentPage,
+ page.pageSize,
+ Object.assign(params, this.manageQuery)
+ ).then((res) => {
+ const data = res.data.data;
+
+ this.managePage.total = data.total;
+ this.manageData = data.records;
+ this.manageLoading = false;
+
+ this.$refs.manageCrud.refreshTable();
+ this.$refs.manageCrud.doLayout();
+
+ this.manageSelectionClear();
+ });
+ },
+ manageSelectionClear () {
+ this.manageSelectionList = [];
+ this.$refs.manageCrud.toggleSelection();
+ },
+ manageSelectionChange (list) {
+ this.manageSelectionList = list;
+ },
+ manageSearchChange (params, done) {
+ this.manageQuery = params;
+ this.managePage.currentPage = 1;
+ this.manageOnLoad(this.managePage, params);
+ done();
+ },
+ manageSearchReset () {
+ this.manageQuery = {};
+ this.manageOnLoad(this.managePage);
+ },
+ manageCurrentChange (currentPage) {
+ this.managePage.currentPage = currentPage;
+ },
+ manageSizeChange (pageSize) {
+ this.managePage.pageSize = pageSize;
+ },
+ },
+};
+</script>
+
+<style lang="scss" scoped>
+.businessLicenses {
+ padding-top: 15px;
+ background-color: transparent;
+}
+.el-main {
+ background-color: transparent;
+ color: #333;
+ text-align: center;
+ // position: relative;
+ // right: 5%;
+}
+.businessLicensess {
+ height: 680px;
+ width: 450px;
+}
+.Licenses {
+ height: 680px;
+ width: 1048px;
+}
+.title {
+ color: #fff;
+}
+</style>
diff --git a/src/views/securityCompany/companyDetails.vue b/src/views/securityCompany/companyDetails.vue
index f03895f..6f230e6 100644
--- a/src/views/securityCompany/companyDetails.vue
+++ b/src/views/securityCompany/companyDetails.vue
@@ -6,100 +6,22 @@
* menu-name 保安公司详细资料
*/
<template>
- <el-row class="morpheus-box">
- <el-col :span="24">
- <el-card>
- <div class="card-body">
- <el-tabs v-model="activeName"
- @tab-click="handleClick">
- <el-tab-pane label="基本信息"
- name="first">
- <el-form :model="form"
- label-position="right"
- size="mini"
- label-width="100px">
- <el-row>
- <el-col span="12">
- <el-form-item label="公司名称">
- <el-input disabled="true"
- v-model="form.enterprisename"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- <el-col span="12">
- <el-form-item label="法定代表人">
- <el-input disabled="true"
- v-model="form.representative"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col span="24">
- <el-form-item label="注册地址">
- <el-input disabled="true"
- v-model="form.address"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
-
- <el-row>
- <el-col span="12">
- <el-form-item label="所属辖区">
- <el-input disabled="true"
- v-model="jurisdictionSee"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- <el-col span="12">
- <el-form-item label="所属行业">
- <el-input disabled="true"
- v-model="form.industry"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
-
- <el-row>
- <el-col span="12">
- <el-form-item label="登记机关">
- <el-input disabled="true"
- v-model="form.registration"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- <el-col span="12">
- <el-form-item label="公司类型">
- <el-input disabled="true"
- v-model="form.enterprises"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
-
- <el-row>
- <el-col span="24">
- <el-form-item label="经营范围">
- <el-input type="textarea"
- disabled="true"
- v-model="form.business"
- resize="none"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- </el-tab-pane>
- <el-tab-pane label="工商信息"
- name="second">
- <el-form :model="form"
- label-position="right"
- size="mini"
- label-width="100px">
- <!-- <el-row>
+ <el-row class="morpheus-box">
+ <el-col :span="24">
+ <el-card>
+ <div class="card-body">
+ <el-tabs v-model="activeName" @tab-click="handleClick">
+ <!-- 基本信息 -->
+ <el-tab-pane :label="baseTitle" name="first">
+ <el-form
+ :model="form"
+ label-position="right"
+ size="mini"
+ label-width="100px"
+ >
+ <el-row>
<el-col span="12">
- <el-form-item label="公司名称">
+ <el-form-item label="企业名称" label-width="100px">
<el-input
disabled="true"
v-model="form.enterprisename"
@@ -108,7 +30,21 @@
</el-form-item>
</el-col>
<el-col span="12">
- <el-form-item label="法定代表人">
+ <el-form-item label="所属辖区" label-width="160px">
+ <el-input
+ disabled="true"
+ v-model="form.jurisdictionName"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row v-if="representativeVisiable">
+ <el-col span="12">
+ <el-form-item
+ :label="representativeLabel"
+ label-width="100px"
+ >
<el-input
disabled="true"
v-model="form.representative"
@@ -116,176 +52,491 @@
></el-input>
</el-form-item>
</el-col>
- </el-row> -->
-
- <el-row>
- <el-col span="12">
- <el-form-item label="组织机构代码">
- <el-input disabled="true"
- v-model="form.organizationcode"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
-
- <el-col span="12">
- <el-form-item label="注册资金">
- <el-input disabled="true"
- v-model="form.registeredcapital"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
-
- <el-row>
- <!-- <el-col span="12">
- <el-form-item label="实缴资金">
- <el-input
- disabled="true"
- v-model="form.capital"
- autocomplete="off"
- ></el-input>
- </el-form-item>
- </el-col> -->
- <el-col span="12">
- <el-form-item label="注册时间">
- <el-input disabled="true"
- v-model="form.establishtime"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- <el-col span="12">
- <el-form-item label="工商注册号">
- <el-input disabled="true"
- v-model="form.registrationnumber"
- autocomplete="off"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
-
- <!-- <el-row>
<el-col span="12">
- <el-form-item label="工商注册号">
+ <el-form-item
+ :label="representativecellLabel"
+ label-width="160px"
+ >
<el-input
disabled="true"
- v-model="form.registrationnumber"
+ v-model="form.representativecell"
autocomplete="off"
></el-input>
</el-form-item>
</el-col>
- </el-row> -->
- </el-form>
- </el-tab-pane>
- <el-tab-pane label="投资人信息"
- name="third">
- <avue-crud class="company-box"
- :option="investorOption"
- :search.sync="investorSearch"
- :table-loading="investorLoading"
- :data="investorData"
- ref="investorCrud"
- :page.sync="investorPage"
- @selection-change="investorSelectionChange"
- @search-change="investorSearchChange"
- @search-reset="investorSearchReset"
- @current-change="investorCurrentChange"
- @size-change="investorSizeChange"
- @refresh-change="investorSizerefresh"
- @on-load="investorOnLoad">
- </avue-crud>
- </el-tab-pane>
- <el-tab-pane label="管理人信息"
- name="fourth">
- <avue-crud class="company-box"
- :option="manageOption"
- :search.sync="manageSearch"
- :table-loading="manageLoading"
- :data="manageData"
- ref="manageCrud"
- :page.sync="managePage"
- @selection-change="manageSelectionChange"
- @search-change="manageSearchChange"
- @search-reset="manageSearchReset"
- @current-change="manageCurrentChange"
- @size-change="manageSizeChange"
- @refresh-change="manageSizerefresh"
- @on-load="manageOnLoad">
- </avue-crud>
- </el-tab-pane>
- <el-tab-pane label="装备信息"
- name="fifth">
- <equipment :forms="forms"
- v-if="seestaff"></equipment>
- </el-tab-pane>
- <el-tab-pane label="保安员信息"
- name="sixth">
- <staff :forms="forms"
- v-if="seestaff"
- :doit="seestaff2"></staff>
- </el-tab-pane>
- <el-tab-pane label="处罚信息"
- name="seventh">
- <punish :forms="forms"
- v-if="seestaff"></punish>
- </el-tab-pane>
- <el-tab-pane label="服务对象"
- name="eighth">
- <service :form="forms"
- v-if="seestaff"
- :refresh="seestaff3"></service>
- </el-tab-pane>
- <!-- <el-tab-pane label="其他附件" name="eighth">
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="联系人" label-width="100px">
+ <el-input
+ disabled="true"
+ v-model="form.contacts"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="联系电话" label-width="160px">
+ <el-input
+ disabled="true"
+ v-model="form.contactscell"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="企业属性" label-width="100px">
+ <el-input
+ disabled="true"
+ v-model="form.stats"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="注册地址" label-width="160px">
+ <el-input
+ disabled="true"
+ v-model="form.address"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row v-if="fregionVisiable">
+ <el-col span="12">
+ <el-form-item label="服务区域" label-width="100px">
+ <el-input
+ disabled="true"
+ v-model="form.fregion"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="服务时间" label-width="160px">
+ <el-input
+ disabled="true"
+ v-model="form.ftime"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="登记机关" label-width="100px">
+ <el-input
+ disabled="true"
+ v-model="form.registration"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item
+ label="办公地址"
+ label-width="160px"
+ v-if="industryVisiable"
+ >
+ <el-input
+ disabled="true"
+ v-model="form.industry"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-tab-pane>
+ <!-- 工商信息 -->
+ <el-tab-pane label="工商信息" name="second">
+ <div v-if="secondVisiable">
+ <a style="color:#fff">总公司工商信息</a>
+ <el-divider></el-divider>
+ </div>
+ <el-form
+ :model="form"
+ v-if="secondVisiable"
+ label-position="right"
+ size="mini"
+ label-width="100px"
+ >
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="统一社会信用代码" label-width="130px">
+ <el-input
+ disabled="true"
+ v-model="businessObj.socialCreditCode"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+
+ <el-col span="12">
+ <el-form-item label="注册时间">
+ <el-input
+ disabled="true"
+ v-model="businessObj.registerTime"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="注册资本" label-width="130px">
+ <el-input
+ disabled="true"
+ v-model="businessObj.capital"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="经营范围">
+ <el-input
+ disabled="true"
+ v-model="businessObj.businessScope"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="营业执照" label-width="130px">
+ <el-upload
+ disabled="true"
+ class="avatar-uploader"
+ :show-file-list="false"
+ >
+ <el-image
+ style="width: 150px; height: 150px"
+ :src="businessObj.trading"
+ :preview-src-list="tradingUrlList">
+ </el-image>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div v-if="secondVisiable">
+ <a style="color:#fff">分公司工商信息</a>
+ <el-divider></el-divider>
+ </div>
+ <el-form
+ :model="form"
+ label-position="right"
+ size="mini"
+ label-width="100px"
+ >
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="统一社会信用代码" label-width="130px">
+ <el-input
+ disabled="true"
+ v-model="form.creditcode"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+
+ <el-col span="12">
+ <el-form-item label="注册时间">
+ <el-input
+ disabled="true"
+ v-model="form.establishtime"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="注册资本" label-width="130px">
+ <el-input
+ disabled="true"
+ v-model="form.registeredcapital"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="经营范围">
+ <el-input
+ disabled="true"
+ v-model="form.business"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="营业执照" label-width="130px">
+ <el-upload
+ disabled="true"
+ class="avatar-uploader"
+ :show-file-list="false"
+ >
+ <el-image
+ style="width: 150px; height: 150px"
+ :src="form.businessLicense"
+ :preview-src-list="businessLicenseUrlList">
+ </el-image>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-tab-pane>
+ <!-- 出资人信息 -->
+ <el-tab-pane
+ label="出资人信息"
+ name="third"
+ v-if="shareholderVisiable"
+ >
+ <avue-crud
+ class="company-box"
+ :option="investorOption"
+ :search.sync="investorSearch"
+ :table-loading="investorLoading"
+ :data="investorData"
+ ref="investorCrud"
+ :page.sync="investorPage"
+ @selection-change="investorSelectionChange"
+ @search-change="investorSearchChange"
+ @search-reset="investorSearchReset"
+ @current-change="investorCurrentChange"
+ @size-change="investorSizeChange"
+ @refresh-change="investorSizerefresh"
+ @on-load="investorOnLoad"
+ >
+ </avue-crud>
+ </el-tab-pane>
+ <!-- 主要管理人员信息 -->
+ <el-tab-pane :label="managerLabel" name="fourth">
+ <avue-crud
+ class="company-box"
+ :option="manageOption"
+ :search.sync="manageSearch"
+ :table-loading="manageLoading"
+ :data="manageData"
+ ref="manageCrud"
+ :page.sync="managePage"
+ @selection-change="manageSelectionChange"
+ @search-change="manageSearchChange"
+ @search-reset="manageSearchReset"
+ @current-change="manageCurrentChange"
+ @size-change="manageSizeChange"
+ @refresh-change="manageSizerefresh"
+ @on-load="manageOnLoad"
+ >
+ </avue-crud>
+ </el-tab-pane>
+ <!-- 装备信息 -->
+ <el-tab-pane label="装备信息" name="fifth" v-if="equipmentVisiable">
+ <equipment :forms="forms" v-if="seestaff"></equipment>
+ </el-tab-pane>
+ <!-- 保安员信息 -->
+ <el-tab-pane
+ label="保安员信息"
+ name="sixth"
+ v-if="securityVisiable"
+ >
+ <staff :forms="forms" v-if="seestaff" :doit="seestaff2"></staff>
+ </el-tab-pane>
+ <!-- 处罚信息 -->
+ <el-tab-pane label="处罚信息" name="seventh">
+ <punish :forms="forms" v-if="seestaff"></punish>
+ </el-tab-pane>
+ <!-- 服务对象信息 -->
+ <el-tab-pane
+ label="服务对象信息"
+ name="eighth"
+ v-if="dispatcherUnitVisiable"
+ >
+ <service
+ :form="forms"
+ v-if="seestaff"
+ :refresh="seestaff3"
+ ></service>
+ </el-tab-pane>
+ <!-- <el-tab-pane label="其他附件" name="eighth">
<enclosure :form="form"></enclosure>
</el-tab-pane> -->
- <el-tab-pane label="营业执照"
- name="ninth">
- <div class="businessLicenses">
- <el-container>
- <el-main>
- <div class="title"
- v-if="businessLicenseUrl == ''">
- 未上传营业执照
- </div>
- <img class="businessLicensess"
- :src="businessLicenseUrl"
- alt=""
- v-else />
- </el-main>
- </el-container>
- </div>
- </el-tab-pane>
- <el-tab-pane label="许可证"
- name="tenth">
- <div class="businessLicenses">
- <el-container>
- <el-main>
- <div class="title"
- v-if="licenceUrl == ''">
- 未上传许可证
- </div>
- <img class="Licenses"
- :src="licenceUrl"
- alt=""
- v-else />
- </el-main>
- </el-container>
- </div>
- </el-tab-pane>
- </el-tabs>
- </div>
- </el-card>
- </el-col>
- </el-row>
+ <!-- 营业执照 -->
+ <!-- <el-tab-pane label="营业执照" name="ninth">
+ <div class="businessLicenses">
+ <el-container>
+ <el-main>
+ <div class="title" v-if="businessLicenseUrl == ''">
+ 未上传营业执照
+ </div>
+ <img
+ class="businessLicensess"
+ :src="businessLicenseUrl"
+ alt=""
+ v-else
+ />
+ </el-main>
+ </el-container>
+ </div>
+ </el-tab-pane> -->
+ <!-- 许可证信息 -->
+ <el-tab-pane
+ :label="licenceLabel"
+ name="tenth"
+ v-if="licenceVisiable"
+ >
+ <el-form
+ :model="licenceForm"
+ label-position="right"
+ size="mini"
+ label-width="100px"
+ >
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="名称">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.unitName"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+
+ <el-col span="12">
+ <el-form-item label="住所">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.address"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="法定代表人">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.legalPeople"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="批准文号">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.approvalNumber"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="发证机关">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.licenceIssuingUnit"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="发证时间">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.licenceIssuingTime"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="许可证编号">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.code"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12" v-if="registerCapitalVisiable">
+ <el-form-item label="注册资本">
+ <el-input
+ disabled="true"
+ v-model="licenceForm.registerCapital"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="24">
+ <el-form-item :label="contentLabel">
+ <el-input
+ type="textarea"
+ disabled="true"
+ v-model="licenceForm.content"
+ autocomplete="off"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="许可证图片">
+ <el-upload
+ disabled="true"
+ class="avatar-uploader"
+ :show-file-list="false"
+ >
+ <el-image
+ style="width: 150px; height: 150px"
+ :src="licenceForm.url"
+ :preview-src-list="licenceUrlList">
+ </el-image>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-tab-pane>
+ <!-- 备案证 -->
+ <el-tab-pane
+ label="备案证"
+ name="tab12"
+ v-if="certificdinedVisiable"
+ >
+ <div class="businessLicenses">
+ <el-container>
+ <el-main>
+ <div class="title" v-if="licenceUrl == ''">
+ 未上传备案证
+ </div>
+ <img class="Licenses" :src="licenceUrl" alt="" v-else />
+ </el-main>
+ </el-container>
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
</template>
<script>
import {
- manifestationList,
- dispatchList,
- honorchList,
- trainList,
- examinationList,
- getInvestorList,
- getManageList,
+ manifestationList,
+ dispatchList,
+ honorchList,
+ trainList,
+ examinationList,
+ getInvestorList,
+ getManageList,
+ getBusinessInfo,
+ getLicenceDetail,
} from "@/api/securityCompany/companyDetails";
import equipment from "./computents/equipment.vue"; //装备管理
import staff from "./computents/staff.vue"; //保安员信息
@@ -296,458 +547,632 @@
import { getList } from "@/api/securityCompany/security"; //保安公司
export default {
- components: {
- equipment: equipment,
- staff: staff,
- punish: punish,
- service: service,
- // enclosure: enclosure,
+ components: {
+ equipment: equipment,
+ staff: staff,
+ punish: punish,
+ service: service,
+ // enclosure: enclosure,
+ },
+ data() {
+ var w = 160,
+ s = 12;
+ return {
+ dialogImageUrl: '',
+ dialogVisible: false,
+ businessObj:{},
+ licenceForm:{},
+ licenceUrlList:[],
+ tradingUrlList:[],
+ businessLicenseUrlList:[],
+ representativeVisiable: true,
+ registerCapitalVisiable: true,
+ fregionVisiable: false,
+ secondVisiable: false,
+ industryVisiable: true,
+ representativecellLabel: "法定代表人联系电话",
+ representativeLabel: "法定代表人",
+ contentLabel: "服务范围",
+ businessLicenseUrl: "",
+ licenceUrl: "",
+ deptId: "",
+ managerLabel: "主要管理人信息",
+ licenceLabel: "许可证信息",
+ baseTitle: "基本信息",
+ certificdinedVisiable: false,
+ dispatcherUnitVisiable: true,
+ securityVisiable: true,
+ businessVisiable: true,
+ licenceVisiable: true,
+ shareholderVisiable: true,
+ equipmentVisiable: true,
+ activeName: "first",
+ form: {},
+ manifestationData: [],
+ dispatchData: [],
+ honorchData: [],
+ trainData: [],
+ examinationData: [],
+ investorOption: {
+ // 操作栏多余按钮去除
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ menu: false,
+ selection: true,
+
+ align: "center",
+ height: "auto",
+ calcHeight: 270,
+ tip: false,
+ searchShow: false,
+ searchShowBtn: false,
+ searchMenuSpan: 4,
+ index: false,
+ viewBtn: true,
+ //dialogType: 'drawer',
+ dialogClickModal: false,
+ // 操作栏宽度
+ menuWidth: 156,
+ column: [
+ {
+ label: "id",
+ prop: "id",
+ hide: true,
+ addDisplay: false,
+ editDisplay: false,
+ },
+ {
+ label: "股东",
+ prop: "shareholder",
+ searchLabelWidth: 55,
+ search: true,
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "持股比例(%)",
+ prop: "shareholdingratio",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "出资金额(万元)",
+ prop: "capital",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "出资时间",
+ prop: "capitaltime",
+ type: "date",
+ format: "yyyy-MM-dd hh:mm:ss",
+ valueFormat: "timestamp",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "身份证",
+ prop: "cardid",
+ labelWidth: w,
+ // span: s,
+ search: true,
+ },
+ {
+ label: "联系电话",
+ prop: "cell",
+ labelWidth: w,
+ span: s,
+ },
+ {
+ label: "统一社会信用代码",
+ prop: "creditcode",
+ hide: true,
+ addDisplay: false,
+ editDisplay: false,
+ labelWidth: w,
+ span: s,
+ },
+ ],
+ },
+ investorSearch: {},
+ investorLoading: true,
+ investorData: [],
+ investorPage: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ investorQuery: {},
+ investorSelectionList: [],
+
+ manageOption: {
+ // 操作栏多余按钮去除
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ selection: true,
+ searchShowBtn: false,
+ menu: false,
+
+ align: "center",
+ height: "auto",
+ calcHeight: 270,
+ tip: false,
+ searchShow: false,
+ searchMenuSpan: 4,
+ index: false,
+ viewBtn: true,
+ //dialogType: 'drawer',
+ dialogClickModal: false,
+ // 操作栏宽度
+ menuWidth: 156,
+ column: [
+ {
+ label: "姓名",
+ prop: "name",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "职务",
+ prop: "post",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "身份证号",
+ prop: "cardid",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "联系电话",
+ prop: "cell",
+ slot: true,
+ display: false,
+ },
+ {
+ label: "学历",
+ prop: "education",
+ display:false,
+ row:true,
+ hide:true,
+ rules: [{
+ required: true,
+ message: "请选择学历",
+ trigger: "blur"
+ }],
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationTypes",
+ search: false,
+ searchSpan: 4,
+ type: "select",
+ props: {
+ label: "dictValue",
+ value: "dictKey"
+ },
+ dataType: "number",
+ },
+ {
+ label: "证书",
+ prop: "paper",
+ type: "upload",
+ dataType:"string",
+ listType: "picture-card",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "只能上传jpg/png格式图片,且不超过2Mb",
+ action: "/api/blade-resource/oss/endpoint/put-files",
+ display:false,
+ hide:true,
+ },
+ ],
+ },
+ manageSearch: {},
+ manageLoading: true,
+ manageData: [],
+ managePage: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ manageQuery: {},
+ manageSelectionList: [],
+ forms: {}, //防串数据
+ jurisdictionSee: "", //中文辖区
+ seestaff: false,
+ seestaff2: false,
+ seestaff3: true,
+ };
+ },
+ created() {
+ //防tab 重复
+ this.tabClear();
+ //数据初始化
+ this.initData();
+ },
+ methods: {
+ //数据初始化
+ initData() {
+ var data = JSON.parse(this.$route.query.data);
+ this.form = data;
+ this.businessLicenseUrlList.push(data.businessLicense);
+ //单位列表进入
+ var stats = data.stats;
+ var deptId = data.departmentid;
+ //初始tab控制
+ this.initController(stats, deptId);
+ //初始数据获取
+ this.getdatas(data);
},
- data () {
- var w = 160,
- s = 12;
- return {
- businessLicenseUrl: "",
- licenceUrl: "",
-
- activeName: "first",
- form: {},
- manifestationData: [],
- dispatchData: [],
- honorchData: [],
- trainData: [],
- examinationData: [],
-
- investorOption: {
- // 操作栏多余按钮去除
- delBtn: false,
- editBtn: false,
- addBtn: false,
- menu: false,
- selection: true,
-
- align: "center",
- height: "auto",
- calcHeight: 270,
- tip: false,
- searchShow: false,
- searchShowBtn: false,
- searchMenuSpan: 4,
- index: false,
- viewBtn: true,
- //dialogType: 'drawer',
- dialogClickModal: false,
- // 操作栏宽度
- menuWidth: 156,
- height: 600,
- column: [
- {
- label: "id",
- prop: "id",
- hide: true,
- addDisplay: false,
- editDisplay: false,
- },
- {
- label: "股东",
- prop: "shareholder",
- searchLabelWidth: 55,
- search: true,
- labelWidth: w,
- span: s,
- },
- {
- label: "持股比例(%)",
- prop: "shareholdingratio",
- labelWidth: w,
- span: s,
- },
- // {
- // label: "最终受益股份",
- // prop: "beneficial",
- // },
- {
- label: "出资金额(万元)",
- prop: "capital",
- labelWidth: w,
- span: s,
- },
- {
- label: "出资时间",
- prop: "capitaltime",
- type: "date",
- format: "yyyy-MM-dd hh:mm:ss",
- valueFormat: "timestamp",
- labelWidth: w,
- span: s,
- },
- {
- label: "身份证",
- prop: "cardid",
- labelWidth: w,
- // span: s,
- search: true,
- },
- {
- label: "联系电话",
- prop: "cell",
- labelWidth: w,
- span: s,
- },
- {
- label: "统一社会信用代码",
- prop: "creditcode",
- hide: true,
- addDisplay: false,
- editDisplay: false,
- labelWidth: w,
- span: s,
- },
- ],
- },
- investorSearch: {},
- investorLoading: true,
- investorData: [],
- investorPage: {
- pageSize: 10,
- currentPage: 1,
- total: 0,
- },
- investorQuery: {},
- investorSelectionList: [],
-
- manageOption: {
- // 操作栏多余按钮去除
- delBtn: false,
- editBtn: false,
- addBtn: false,
- selection: true,
- searchShowBtn: false,
- menu: false,
-
- align: "center",
- height: "auto",
- calcHeight: 270,
- tip: false,
- searchShow: false,
- searchMenuSpan: 4,
- index: false,
- viewBtn: true,
- //dialogType: 'drawer',
- dialogClickModal: false,
- // 操作栏宽度
- menuWidth: 156,
- height: 600,
- column: [
- {
- label: "管理人姓名",
- prop: "name",
- slot: true,
- display: false,
- },
- {
- label: "职务",
- prop: "post",
- slot: true,
- display: false,
- },
- {
- label: "身份证号",
- prop: "cardid",
- slot: true,
- display: false,
- },
- {
- label: "联系电话",
- prop: "cell",
- slot: true,
- display: false,
- },
- ],
- },
- manageSearch: {},
- manageLoading: true,
- manageData: [],
- managePage: {
- pageSize: 10,
- currentPage: 1,
- total: 0,
- },
- manageQuery: {},
- manageSelectionList: [],
-
- forms: {}, //防串数据
- jurisdictionSee: "", //中文辖区
-
- seestaff: false,
- seestaff2: false,
- seestaff3: true,
- };
- },
- created () {
- var flag = false,
- i = 0,
- ind = null,
- that = this;
-
- this.$store.state.tags.tagList.forEach((item, index) => {
- if (
- item.label == "保安公司详细资料" ||
- item.label == "保安公司详细信息"
- ) {
- if (flag == false) {
- ind = index;
- flag = true;
- }
- i++;
- }
+ //tab 初始设置
+ initController(stats, deptId) {
+ this.stats = stats;
+ this.deptId = deptId;
+ var that = this;
+ // 判断按进入的公司类型
+ if (stats == "2") {
+ //本市保安公司
+ that.baseTitle = "保安单位基本信息";
+ }
+ if (stats == "0") {
+ //自招保安单位
+ that.baseTitle = "单位基本信息";
+ that.equipmentVisiable = false;
+ that.shareholderVisiable = false;
+ that.certificdinedVisiable = true;
+ that.licenceVisiable = false;
+ }
+ if (stats == "4") {
+ //分公司
+ that.baseTitle = "保安单位基本信息";
+ that.certificdinedVisiable = true;
+ that.secondVisiable = true;
+ that.businessVisiable = false;
+ that.licenceLabel = "总公司许可证信息";
+ //查询分公司(及总公司)工商信息
+ getBusinessInfo(deptId).then((res) => {
+ that.businessObj = res.data.data;
+ that.tradingUrlList.push(res.data.data.trading);
+ if (that.businessObj.id == -1) {
+ that.businessObj.id = null;
+ }
});
-
- if (i > 1) {
- this.$store.state.tags.tagList.splice(ind, 1);
- }
-
- if (this.$route.query.fromSecunityGuardId) {
- var page = {
- currentPage: 1,
- pageSize: 10,
- },
- params = { departmentid: this.$route.query.fromSecunityGuardId };
- getList(page.currentPage, page.pageSize, params).then((res) => {
- that.form = res.data.data.records[0];
- this.jurisdictionSee = this.form.jurisdictionName;
- that.forms = res.data.data.records[0];
- that.seestaff = true;
- that.businessLicenseUrl = res.data.data.records[0].businessLicense;
- that.licenceUrl = res.data.data.records[0].licence;
- });
- // })
- } else {
- this.form = this.$route.query;
- this.jurisdictionSee = this.form.$jurisdiction;
- this.forms = this.$route.query;
- this.seestaff = true;
- this.getFromData({
- currentPage: 1,
- pageSize: 10,
- });
- }
+ }
+ if (stats == "1") {
+ //培训学校
+ that.baseTitle = "学校基本信息";
+ that.managerLabel = "师资力量";
+ that.licenceLabel = "培训许可证信息";
+ that.shareholderVisiable = false;
+ that.dispatcherUnitVisiable = false;
+ that.securityVisiable = false;
+ }
},
- methods: {
- getFromData (page, params = {}) {
- var that = this;
- params["departmentid"] = this.forms.departmentid;
- getList(page.currentPage, page.pageSize, params).then((res) => {
- that.form = res.data.data.records[0];
- this.businessLicenseUrl = res.data.data.records[0].businessLicense;
- this.licenceUrl = res.data.data.records[0].licence;
- });
- },
- // inspects(d, val) {
- // var a = "";
- // var doit = (d, val) => {
- // for (let k in d) {
- // if (d[k].key == val) {
- // a = d[k].title;
- // break;
- // } else {
- // if (d[k].hasChildren) {
- // doit(d[k].children, val);
- // } else {
- // }
- // }
- // }
- // };
- // doit(d, val);
- // // if (a == "") {
- // // a = val;
- // // }
- // return a;
- // },
- handleClick (tab) {
- if (tab.index == 2) {
- this.investorSearchReset();
- } else if (tab.index == 3) {
- this.manageSearchReset();
- } else if (tab.index == 5) {
- this.seestaff2 = !this.seestaff2;
- } else if (tab.index == 7) {
- this.seestaff3 = !this.seestaff3;
- } else {
- this.getFromData({
- currentPage: 1,
- pageSize: 10,
- });
- }
- // else if (tab.index == 3) {
- // this.getHonorchData();
- // } else if (tab.index == 4) {
- // this.getTrainData();
- // } else if (tab.index == 5) {
- // this.getExaminationData();
- // }
- //
- },
- getManifestationData () {
- manifestationList(this.forms.cardid).then((res) => {
- this.manifestationData = res.data.data.records;
- this.manifestationData.forEach((item) => {
- item.name = this.forms.realName;
- item.time = item.time.substring(0, 10);
- });
- });
- },
- getDispatchData () {
- dispatchList(this.forms.cardid).then((res) => {
- this.dispatchData = res.data.data.records;
- });
- },
- getHonorchData () {
- honorchList(this.forms.cardid).then((res) => {
- this.honorchData = res.data.data.records;
- });
- },
- getTrainData () {
- trainList(this.forms.cardid).then((res) => {
- this.trainData = res.data.data;
+ //初始数据获取
+ getdatas(data) {
+ console.log(data, 123456);
+ var that = this;
+ if (data.departmentid) {
+ if (data.stats == "2") {
+ data.stats = "本市保安公司";
+ }
+ if (data.stats == "0") {
+ data.stats = "自招保安单位";
+ that.representativeVisiable = false;
+ that.industryVisiable = false;
+ that.fregionVisiable = true;
+ }
+ if (data.stats == "1") {
+ data.stats = "保安培训学校";
+ const educationcolumn = this.findObject(
+ this.manageOption.column,
+ "education"
+ );
+ const papercolumn = this.findObject(
+ this.manageOption.column,
+ "paper"
+ );
+ //学历证书
+ educationcolumn.display = true;
+ educationcolumn.hide = false;
+ educationcolumn.search = true;
+ papercolumn.display = true;
+ papercolumn.hide = false;
- this.trainData.forEach((item) => {
- if (item.sex == 1) {
- item.sex = "男";
- } else {
- item.sex = "女";
- }
- });
- });
- },
- getExaminationData () {
- examinationList(this.forms.cardid).then((res) => {
- this.examinationData = res.data.data;
-
- this.examinationData.forEach((item) => {
- if (item.stat == 1) {
- item.stat = "不通过";
- } else {
- item.stat = "通过";
- }
- });
- });
- },
- investorSizerefresh () {
- this.investorOnLoad(this.investorPage, this.investorQuery);
- },
- investorOnLoad (page, params = {}) {
- this.investorLoading = true;
- params["deptId"] = this.form.departmentid;
- getInvestorList(
- page.currentPage,
- page.pageSize,
- Object.assign(params, this.investorQuery)
- ).then((res) => {
- const data = res.data.data;
-
- this.investorPage.total = data.total;
- this.investorData = data.records;
- this.investorLoading = false;
- this.$refs.investorCrud.refreshTable();
- this.$refs.investorCrud.doLayout();
- this.investorSelectionClear();
- });
- },
- investorSelectionClear () {
- this.investorSelectionList = [];
- this.$refs.investorCrud.toggleSelection();
- },
- investorSelectionChange (list) {
- this.investorSelectionList = list;
- },
- investorSearchChange (params, done) {
- this.investorQuery = params;
- this.investorPage.currentPage = 1;
- this.investorOnLoad(this.investorPage, params);
- done();
- },
- investorSearchReset () {
- this.investorQuery = {};
- this.investorOnLoad(this.investorPage);
- },
- investorCurrentChange (currentPage) {
- this.investorPage.currentPage = currentPage;
- },
- investorSizeChange (pageSize) {
- this.investorPage.pageSize = pageSize;
- },
- manageSizerefresh () {
- this.manageOnLoad(this.managePage, this.manageQuery);
- },
- manageOnLoad (page, params = {}) {
- this.manageLoading = true;
- params["deptId"] = this.form.departmentid;
- getManageList(
- page.currentPage,
- page.pageSize,
- Object.assign(params, this.manageQuery)
- ).then((res) => {
- const data = res.data.data;
-
- this.managePage.total = data.total;
- this.manageData = data.records;
- this.manageLoading = false;
-
- this.$refs.manageCrud.refreshTable();
- this.$refs.manageCrud.doLayout();
-
- this.manageSelectionClear();
- });
- },
- manageSelectionClear () {
- this.manageSelectionList = [];
- this.$refs.manageCrud.toggleSelection();
- },
- manageSelectionChange (list) {
- this.manageSelectionList = list;
- },
- manageSearchChange (params, done) {
- this.manageQuery = params;
- this.managePage.currentPage = 1;
- this.manageOnLoad(this.managePage, params);
- done();
- },
- manageSearchReset () {
- this.manageQuery = {};
- this.manageOnLoad(this.managePage);
- },
- manageCurrentChange (currentPage) {
- this.managePage.currentPage = currentPage;
- },
- manageSizeChange (pageSize) {
- this.managePage.pageSize = pageSize;
- },
+ //许可证字段修改
+ this.contentLabel = "培训内容";
+ this.registerCapitalVisiable = false;
+ }
+ if (data.stats == "4") {
+ data.stats = "分公司";
+ that.representativecellLabel = "分公司负责人电话";
+ that.representativeLabel = "分公司负责人";
+ }
+ that.form = data;
+ that.forms = data;
+ that.seestaff = true;
+ that.businessLicenseUrl = data.businessLicense;
+ that.licenceUrl = data.licence;
+ } else {
+ this.form = this.$route.query;
+ this.jurisdictionSee = this.form.$jurisdiction;
+ this.forms = this.$route.query;
+ this.seestaff = true;
+ this.getFromData({
+ currentPage: 1,
+ pageSize: 10,
+ });
+ }
},
+ //防 tab 重复
+ tabClear() {
+ var flag = false,
+ i = 0,
+ ind = null;
+
+ this.$store.state.tags.tagList.forEach((item, index) => {
+ if (
+ item.label == "保安公司详细资料" ||
+ item.label == "保安公司详细信息"
+ ) {
+ if (flag == false) {
+ ind = index;
+ flag = true;
+ }
+ i++;
+ }
+ });
+
+ if (i > 1) {
+ this.$store.state.tags.tagList.splice(ind, 1);
+ }
+ },
+ getFromData(page, params = {}) {
+ var that = this;
+ params["departmentid"] = this.forms.departmentid;
+ getList(page.currentPage, page.pageSize, params).then((res) => {
+ that.form = res.data.data.records[0];
+ var data = res.data.data.records[0];
+ if (data.stats == "2") {
+ data.stats = "本市保安公司";
+ }
+ if (data.stats == "0") {
+ data.stats = "自招保安单位";
+ that.representativeVisiable = false;
+ that.industryVisiable = false;
+ that.fregionVisiable = true;
+ }
+ if (data.stats == "1") {
+ data.stats = "保安培训学校";
+ }
+ if (data.stats == "4") {
+ data.stats = "分公司";
+ that.representativecellLabel = "分公司负责人电话";
+ that.representativeLabel = "分公司负责人";
+ }
+ that.form = data;
+ that.forms = data;
+ this.businessLicenseUrl = res.data.data.records[0].businessLicense;
+ this.licenceUrl = res.data.data.records[0].licence;
+ });
+ },
+ handleClick(tab) {
+ if (tab.index == 2) {
+ this.investorSearchReset();
+ } else if (tab.index == 3) {
+ this.manageSearchReset();
+ } else if (tab.index == 5) {
+ this.seestaff2 = !this.seestaff2;
+ } else if (tab.index == 7) {
+ this.seestaff3 = !this.seestaff3;
+ } else {
+ this.getFromData({
+ currentPage: 1,
+ pageSize: 10,
+ });
+ }
+
+ if(tab.name =="tenth"){
+ //获取许可证信息
+ this.getLicenceInfo();
+ }
+ },
+ //获取许可证信息
+ getLicenceInfo() {
+ var that = this;
+ getLicenceDetail(this.deptId).then((res) => {
+ that.licenceForm = res.data.data;
+ that.licenceUrlList.push(res.data.data.url);
+ });
+ },
+ getManifestationData() {
+ manifestationList(this.forms.cardid).then((res) => {
+ this.manifestationData = res.data.data.records;
+ this.manifestationData.forEach((item) => {
+ item.name = this.forms.realName;
+ item.time = item.time.substring(0, 10);
+ });
+ });
+ },
+ getDispatchData() {
+ dispatchList(this.forms.cardid).then((res) => {
+ this.dispatchData = res.data.data.records;
+ });
+ },
+ getHonorchData() {
+ honorchList(this.forms.cardid).then((res) => {
+ this.honorchData = res.data.data.records;
+ });
+ },
+ getTrainData() {
+ trainList(this.forms.cardid).then((res) => {
+ this.trainData = res.data.data;
+
+ this.trainData.forEach((item) => {
+ if (item.sex == 1) {
+ item.sex = "男";
+ } else {
+ item.sex = "女";
+ }
+ });
+ });
+ },
+ getExaminationData() {
+ examinationList(this.forms.cardid).then((res) => {
+ this.examinationData = res.data.data;
+
+ this.examinationData.forEach((item) => {
+ if (item.stat == 1) {
+ item.stat = "不通过";
+ } else {
+ item.stat = "通过";
+ }
+ });
+ });
+ },
+ investorSizerefresh() {
+ this.investorOnLoad(this.investorPage, this.investorQuery);
+ },
+ investorOnLoad(page, params = {}) {
+ this.investorLoading = true;
+ params["deptId"] = this.form.departmentid;
+ getInvestorList(
+ page.currentPage,
+ page.pageSize,
+ Object.assign(params, this.investorQuery)
+ ).then((res) => {
+ const data = res.data.data;
+
+ this.investorPage.total = data.total;
+ this.investorData = data.records;
+ this.investorLoading = false;
+ this.$refs.investorCrud.refreshTable();
+ this.$refs.investorCrud.doLayout();
+ this.investorSelectionClear();
+ });
+ },
+ investorSelectionClear() {
+ this.investorSelectionList = [];
+ this.$refs.investorCrud.toggleSelection();
+ },
+ investorSelectionChange(list) {
+ this.investorSelectionList = list;
+ },
+ investorSearchChange(params, done) {
+ this.investorQuery = params;
+ this.investorPage.currentPage = 1;
+ this.investorOnLoad(this.investorPage, params);
+ done();
+ },
+ investorSearchReset() {
+ this.investorQuery = {};
+ this.investorOnLoad(this.investorPage);
+ },
+ investorCurrentChange(currentPage) {
+ this.investorPage.currentPage = currentPage;
+ },
+ investorSizeChange(pageSize) {
+ this.investorPage.pageSize = pageSize;
+ },
+ manageSizerefresh() {
+ this.manageOnLoad(this.managePage, this.manageQuery);
+ },
+ manageOnLoad(page, params = {}) {
+ this.manageLoading = true;
+ params["deptId"] = this.form.departmentid;
+ getManageList(
+ page.currentPage,
+ page.pageSize,
+ Object.assign(params, this.manageQuery)
+ ).then((res) => {
+ const data = res.data.data;
+
+ this.managePage.total = data.total;
+ this.manageData = data.records;
+ this.manageLoading = false;
+
+ this.$refs.manageCrud.refreshTable();
+ this.$refs.manageCrud.doLayout();
+
+ this.manageSelectionClear();
+ });
+ },
+ manageSelectionClear() {
+ this.manageSelectionList = [];
+ this.$refs.manageCrud.toggleSelection();
+ },
+ manageSelectionChange(list) {
+ this.manageSelectionList = list;
+ },
+ manageSearchChange(params, done) {
+ this.manageQuery = params;
+ this.managePage.currentPage = 1;
+ this.manageOnLoad(this.managePage, params);
+ done();
+ },
+ manageSearchReset() {
+ this.manageQuery = {};
+ this.manageOnLoad(this.managePage);
+ },
+ manageCurrentChange(currentPage) {
+ this.managePage.currentPage = currentPage;
+ },
+ manageSizeChange(pageSize) {
+ this.managePage.pageSize = pageSize;
+ },
+ },
};
</script>
<style lang="scss" scoped>
.businessLicenses {
- padding-top: 15px;
- background-color: transparent;
+ padding-top: 15px;
+ background-color: transparent;
}
.el-main {
- background-color: transparent;
- color: #333;
- text-align: center;
- // position: relative;
- // right: 5%;
+ background-color: transparent;
+ color: #333;
+ text-align: center;
+ // position: relative;
+ // right: 5%;
}
.businessLicensess {
- height: 680px;
- width: 450px;
+ height: 680px;
+ width: 450px;
}
.Licenses {
- height: 680px;
- width: 1048px;
+ height: 680px;
+ width: 1048px;
}
.title {
- color: #fff;
+ color: #fff;
}
+
+
+ .avatar-uploader .el-upload {
+ border: 1px dashed #d9d9d9;
+ border-radius: 6px;
+ cursor: pointer;
+ position: relative;
+ overflow: hidden;
+ }
+ .avatar-uploader .el-upload:hover {
+ border-color: #409EFF;
+ }
+ .avatar-uploader-icon {
+ font-size: 28px;
+ color: #8c939d;
+ width: 178px;
+ height: 178px;
+ line-height: 178px;
+ text-align: center;
+ }
+ .avatar {
+ width: 178px;
+ height: 178px;
+ display: block;
+ }
</style>
diff --git a/src/views/securityCompany/computents/equipment.vue b/src/views/securityCompany/computents/equipment.vue
index 4ba5384..944d03b 100644
--- a/src/views/securityCompany/computents/equipment.vue
+++ b/src/views/securityCompany/computents/equipment.vue
@@ -96,14 +96,14 @@
width: 70,
},
{
- label: "所属保安公司",
+ label: "企业名称",
prop: "deptId",
searchSpan: 6,
searchLabelWidth: 110,
rules: [
{
required: true,
- message: "请输入所属保安公司",
+ message: "请输入企业名称",
trigger: "blur",
},
],
diff --git a/src/views/securityCompany/computents/service.vue b/src/views/securityCompany/computents/service.vue
index b97fc23..8296e8f 100644
--- a/src/views/securityCompany/computents/service.vue
+++ b/src/views/securityCompany/computents/service.vue
@@ -69,7 +69,7 @@
],
},
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
type: "tree",
overHidden: true,
@@ -86,7 +86,7 @@
rules: [
{
required: true,
- message: "请选择保安公司",
+ message: "请选择企业名称",
trigger: "click",
},
],
diff --git a/src/views/securityCompany/data.js b/src/views/securityCompany/data.js
index 5d5661a..299cadd 100644
--- a/src/views/securityCompany/data.js
+++ b/src/views/securityCompany/data.js
@@ -1,26 +1,21 @@
-var DIC = [
- {
- label: '招聘中',
- value: 1,
- }, {
- label: '停止招聘',
- value: 2,
- }
-]
-var DIC1 = [
- {
- label: '拥有',
- value: 1,
- }, {
- label: '未拥有',
- value: 2,
- }
-]
+var DIC = [{
+ label: '招聘中',
+ value: 1,
+}, {
+ label: '停止招聘',
+ value: 2,
+}]
+var DIC1 = [{
+ label: '拥有',
+ value: 1,
+}, {
+ label: '未拥有',
+ value: 2,
+}]
-var w = 160
- , s = 12;
-export var column = [
- {
+var w = 160,
+ s = 12;
+export var column = [{
label: "id",
prop: "id",
hide: true,
@@ -44,11 +39,11 @@
// value: JSON.parse(window.localStorage.getItem("saber-userInfo")).content.dept_id
// },//上面不显示
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
rules: [{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur"
}],
// addDisplay: true,
@@ -268,4 +263,4 @@
// trigger: "blur"
// }],
},
-]
+]
\ No newline at end of file
diff --git a/src/views/securityCompany/security.vue b/src/views/securityCompany/security.vue
index 39de1ec..a7443be 100644
--- a/src/views/securityCompany/security.vue
+++ b/src/views/securityCompany/security.vue
@@ -423,13 +423,12 @@
// 行单击
handleRowClick(row) {
- // delete (row["name"]);
var obj = row;
obj["name"] = "保安公司详细信息";
- // console.log(obj, "obj");
+ var data = JSON.stringify(obj);
this.$router.push({
path: `/securityCompany/index`,
- query: obj,
+ query: {data:data},
});
},
},
diff --git a/src/views/securityCompany/train.vue b/src/views/securityCompany/train.vue
index 872bcb1..77568a8 100644
--- a/src/views/securityCompany/train.vue
+++ b/src/views/securityCompany/train.vue
@@ -416,13 +416,12 @@
// 行单击
handleRowClick(row) {
- // delete (row["name"]);
var obj = row;
obj["name"] = "保安公司详细信息";
- // console.log(obj, "obj");
+ var data = JSON.stringify(obj);
this.$router.push({
path: `/securityCompany/index`,
- query: obj,
+ query: {data:data},
});
},
},
diff --git a/src/views/securityGuardManagement/dispatchChildoperable copy.vue b/src/views/securityGuardManagement/dispatchChildoperable copy.vue
index ed12902..240c723 100644
--- a/src/views/securityGuardManagement/dispatchChildoperable copy.vue
+++ b/src/views/securityGuardManagement/dispatchChildoperable copy.vue
@@ -130,7 +130,7 @@
// // addDisplay: false
// },
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptId",
labelWidth: 120,
searchLabelWidth: 75,
@@ -147,7 +147,7 @@
rules: [
{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur",
},
],
@@ -176,7 +176,7 @@
rules: [
{
required: true,
- message: "请输入保安公司",
+ message: "请输入企业名称",
trigger: "blur",
},
],
diff --git a/src/views/securityGuardManagement/register.vue b/src/views/securityGuardManagement/register.vue
index 042980a..d323e14 100644
--- a/src/views/securityGuardManagement/register.vue
+++ b/src/views/securityGuardManagement/register.vue
@@ -72,12 +72,12 @@
: ""
}}
</template>
- <template slot-scope="{ row }" slot="deptId">
+ <template slot-scope="{ row }" slot="deptName">
<el-tag
class="rowClickSelf"
title="点击查看所属公司情况"
@click="rowClickSelf(row.deptId)"
- >{{ row.$deptId }}</el-tag
+ >{{ row.deptName }}</el-tag
>
</template>
<template slot-scope="{ type, size, row }" slot="menu">
@@ -288,6 +288,7 @@
import { getToken } from "@/util/auth";
import { addhonor, getER } from "@/api/register/honor";
import baoanz from "./baoanz.vue";
+import { getInformationDetails } from "@/api/securityCompany/security";
export default {
components: {
baoanz,
@@ -473,7 +474,7 @@
display: false,
},
{
- label: "所属保安公司",
+ label: "企业名称",
searchLabelWidth: "110",
// prop: "deptName",
prop: "deptId",
@@ -485,10 +486,18 @@
value: "id",
},
slot: true,
+ hide:true,
searchSpan: 5,
display: false,
overHidden: true,
search: true,
+ },
+ {
+ label: "企业名称",
+ prop: "deptName",
+ slot: true,
+ display: false,
+ overHidden: true,
width: 198,
},
{
@@ -816,12 +825,20 @@
this.$store.commit("setWindowSizeHeightAdd");
},
methods: {
- rowClickSelf(row) {
- // console.log(row, "baoan");
- this.$router.push({
- path: "/securityCompany/index",
- query: { fromSecunityGuardId: row },
- });
+ rowClickSelf(deptId) {
+ var data = {
+ departmentid:deptId
+ }
+ getInformationDetails(data).then((res) => {
+ var obj = res.data.data;
+ obj["name"] = "保安公司详细信息";
+ var data = JSON.stringify(obj);
+ this.$router.push({
+ path: "/securityCompany/index",
+ query: { data: data },
+ });
+ })
+
},
Print() {
this.$Print(this.$refs.baoanzheng);
@@ -857,7 +874,7 @@
},
errorf(err) {
this.$message.success("请查看控制台");
- console.log(err);
+ // console.log(err);
},
handleClose(done) {
this.objf = {};
@@ -877,8 +894,6 @@
this.dialogVisible = true;
},
nodeClick(data) {
- // this.treeDeptId = data.id;
- // console.log(data, 55555);
if (data.title != "南昌市公安局") {
this.jurisdiction = data.id;
} else {
@@ -993,8 +1008,8 @@
},
onLoad(page, params = {}) {
this.loading = true;
+ // console.log(this.jurisdiction,33333);
params["jurisdiction"] = this.jurisdiction;
- // console.log(params, 1, this.query, 2);
getListSecurity(
page.currentPage,
page.pageSize,
@@ -1091,7 +1106,7 @@
})
.then(() => {
updateHold(3, row.cardid).then((res) => {
- console.log(res);
+ // console.log(res);
this.$message({
type: "success",
message: "吊销成功!",
diff --git a/src/views/securityGuardManagement/registerOnce.vue b/src/views/securityGuardManagement/registerOnce.vue
index ae542ac..90f06c6 100644
--- a/src/views/securityGuardManagement/registerOnce.vue
+++ b/src/views/securityGuardManagement/registerOnce.vue
@@ -28,14 +28,14 @@
@refresh-change="refreshChange"
@on-load="onLoad"
>
- <template slot-scope="{ row }" slot="deptId">
+ <!-- <template slot-scope="{ row }" slot="deptId">
<el-tag
class="rowClickSelf"
title="点击查看所属公司情况"
@click="rowClickSelf(row.deptId)"
>{{ row.$deptId }}</el-tag
>
- </template>
+ </template> -->
<template slot-scope="{ type, size, row }" slot="menu">
<el-button
:size="size"
@@ -300,7 +300,7 @@
display: false,
},
{
- label: "所属保安公司",
+ label: "企业名称",
searchLabelWidth: "110",
// prop: "deptName",
prop: "deptId",
@@ -616,6 +616,9 @@
return ids.join(",");
},
},
+ created(){
+ this.departmentid = this.$route.query.departmentid;
+ },
mounted() {
//重复菜单
@@ -643,7 +646,7 @@
// 判断是否从保安公司人数点击跳转
if (this.$route.query.departmentid) {
this.departmentid = this.$route.query.departmentid;
- // console.log(this.departmentid, "ddddddddddddd");
+ console.log(this.departmentid, "ddddddddddddd");
this.spanRight = 24;
this.spanLeft = 0;
var d = this.option.column;
@@ -809,12 +812,14 @@
refreshChange() {
this.onLoad(this.page, this.query);
},
- onLoad(page, params = {}, deptId) {
+ onLoad(page, params = {}) {
this.loading = true;
params["jurisdiction"] = this.jurisdiction;
if (this.departmentid) {
params["deptId"] = this.departmentid;
}
+ console.log(params,123456)
+ console.log(this.query,123456)
getListSecurity(
page.currentPage,
page.pageSize,
diff --git a/src/views/statisticalQueryManagement/businessStatisticsDetail.vue b/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
index d04f3b6..f16fcdf 100644
--- a/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
+++ b/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
@@ -1,5 +1,5 @@
<template>
- <basic-container>
+ <basic-container class="businessDetail">
<avue-crud
:option="tableOption"
:table-loading="loading"
@@ -149,7 +149,7 @@
// display: false
},
{
- label: "保安公司名称",
+ label: "企业名称",
width: 300,
prop: "deptName",
display: false
@@ -342,4 +342,8 @@
}
};
</script>
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+ .businessDetail{
+ height: 50%;
+ }
+</style>
diff --git a/src/views/statisticalQueryManagement/businessStatisticsFwdq.vue b/src/views/statisticalQueryManagement/businessStatisticsFwdq.vue
index aa9f880..f93af90 100644
--- a/src/views/statisticalQueryManagement/businessStatisticsFwdq.vue
+++ b/src/views/statisticalQueryManagement/businessStatisticsFwdq.vue
@@ -91,7 +91,7 @@
// display: false
},
{
- label: "所属保安公司",
+ label: "企业名称",
prop: "deptName",
width: 300,
display: false
diff --git a/src/views/statisticalQueryManagement/companyDetails.vue b/src/views/statisticalQueryManagement/companyDetails.vue
index 44c422e..63b7843 100644
--- a/src/views/statisticalQueryManagement/companyDetails.vue
+++ b/src/views/statisticalQueryManagement/companyDetails.vue
@@ -102,7 +102,7 @@
display: false
},
{
- label: "所属保安公司",
+ label: "企业名称",
prop: "enterpriseName",
width: 300,
display: false
diff --git a/src/views/statisticalQueryManagement/informationLoginStatistics.vue b/src/views/statisticalQueryManagement/informationLoginStatistics.vue
new file mode 100644
index 0000000..9cb966c
--- /dev/null
+++ b/src/views/statisticalQueryManagement/informationLoginStatistics.vue
@@ -0,0 +1,275 @@
+<template>
+ <div>
+ <basic-container class="witerFontColorInput">
+ <avue-crud
+ :option="option"
+ :data="data"
+ :page.sync="page"
+ :search.sync="search"
+ :table-loading="loading"
+ @on-load="onLoad(page)"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @refresh-change="refreshChange"
+ >
+ <template slot="menuLeft">
+ <el-button
+ type="warning"
+ size="small"
+ plain
+ icon="el-icon-download"
+ @click="handleExportLoginRecord"
+ >导出
+ </el-button>
+ </template>
+ </avue-crud>
+
+ </basic-container>
+ </div>
+</template>
+
+<script>
+import { getInformationLoginPage } from "@/api/loginRecord/loginRecord";
+import { lazyTrees } from "@/api/index/index";
+import {dictionaryList} from "@/api/statisticalQueryManagement/statisticalQueryManagement";
+import Qs from "qs";
+import { getToken } from "@/util/auth";
+import { mapGetters } from "vuex";
+export default {
+ data() {
+ return {
+ loading: true,
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ },
+ query: {},
+ search: {},
+ data: [],
+ option: {
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ selection: false,
+ menu: false,
+ align: "center",
+ height: "auto",
+ calcHeight: 30,
+ tip: false,
+ searchShowBtn: false,
+ searchShow: true,
+ searchMenuSpan: 6,
+ index: true,
+ column: [
+ {
+ label: "登录时间",
+ prop: "releaseTimeRange",
+ type: "datetime",
+ format: "yyyy-MM-dd",
+ valueFormat: "yyyy-MM-dd",
+ searchRange: true,
+ hide: true,
+ search: true,
+ searchSpan: 6,
+ rules: [
+ {
+ required: true,
+ message: "请输入登录时间",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "企业名称",
+ prop: "deptName",
+ disabled: true,
+ overHidden: true,
+ searchSpan: 5,
+ search: true,
+ },
+ {
+ label: "所属辖区",
+ prop: "jurisdictionName",
+ searchSpan: 4,
+ type: "tree",
+ props: {
+ label: "title",
+ value: "id",
+ },
+ dicData: [],
+ search: true,
+ rules: [
+ {
+ required: true,
+ message: "请选择所属辖区",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "企业属性",
+ prop: "stats",
+ search: true,
+ searchSpan: 4,
+ display: false,
+ type: "select",
+ props: {
+ label: "dictValue",
+ value: "dictKey",
+ },
+ dicData: [],
+ },
+ {
+ label: "最近一次登录时间",
+ prop: "createTime",
+ minWidth: 100,
+ display: false,
+ },
+ {
+ label: "登录次数",
+ prop: "num",
+ disabled: false,
+ },
+ {
+ label: "是否有登录",
+ prop: "types",
+ search: true,
+ disabled: false,
+ searchLabelWidth: 100,
+ type: "select",
+ searchSpan: 4,
+ hide: true,
+ dicData: [
+ {
+ label: "全部",
+ value: 3,
+ },
+ {
+ label: "是",
+ value: 2,
+ },
+ {
+ label: "否",
+ value: 1,
+ },
+ ],
+ },
+ ],
+ },
+ };
+ },
+ computed: {
+ ...mapGetters(["permission"]),
+ },
+ created(){
+ //分别查询辖区和字典数据
+ this.getSubOfficeData();
+ this.getDictionaryList();
+ },
+ methods: {
+ //登录数据导出
+ handleExportLoginRecord() {
+ this.$confirm("是否导出企业登录记录数据?", "提示", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ }).then(() => {
+ //获取查询条件
+ const { releaseTimeRange } = this.search;
+ if (releaseTimeRange) {
+ this.search["startTime"] = releaseTimeRange[0];
+ this.search["endTime"] = releaseTimeRange[1];
+ }
+ var data = {
+ jurisdiction: this.search.jurisdictionName,
+ stats: this.search.stats,
+ deptName: this.search.deptName,
+ types: this.search.types,
+ startTime: this.search.startTime,
+ endTime: this.search.endTime,
+ };
+ // console.log(data,123);
+ //序列号url形式,用&拼接
+ data = Qs.stringify(data);
+ window.open(
+ `/api/loginRecord/export-login-record?${
+ this.website.tokenHeader
+ }=${getToken()}&` + data
+ );
+ });
+ },
+ //获取辖区数据
+ getSubOfficeData() {
+ lazyTrees().then((res) => {
+ if (res.data.code === 200) {
+ this.option.column.forEach((item) => {
+ if (item.label == "所属辖区") {
+ item.dicData = res.data.data;
+ }
+ });
+ } else {
+ this.$message.error(res.msg);
+ }
+ });
+ },
+ //获取字典表数
+ getDictionaryList() {
+ dictionaryList().then((res) => {
+ if (res.data.code === 200) {
+ this.option.column.forEach((item) => {
+ if (item.label == "企业属性") {
+ item.dicData = res.data.data;
+ }
+ });
+ }
+ });
+ },
+ onLoad(page, params = {}) {
+ //属性值转换
+ params["jurisdiction"] = params["jurisdictionName"] || "";
+
+ const { releaseTimeRange } = this.search;
+
+ let values = {
+ ...params,
+ };
+ if (releaseTimeRange) {
+ values = {
+ ...params,
+ startTime: releaseTimeRange[0],
+ endTime: releaseTimeRange[1],
+ ...this.query,
+ };
+ values.releaseTimeRange = null;
+ }
+
+ getInformationLoginPage(page.currentPage, page.pageSize, values).then(
+ (res) => {
+ const data = res.data.data;
+ this.data = data.records;
+ this.page.total = data.total;
+ this.loading = false;
+ }
+ );
+ },
+ refreshChange() {
+ this.onLoad(this.page, this.query);
+ },
+ searchChange(params, done) {
+ this.query = params;
+ this.page.currentPage = 1;
+ this.refreshChange();
+ done();
+ },
+ searchReset() {
+ this.query = {};
+ this.page.currentPage = 1;
+ this.refreshChange();
+ },
+ },
+};
+</script>
+
+<style scoped>
+</style>
\ No newline at end of file
diff --git a/src/views/statisticalQueryManagement/securityGuardDetail.vue b/src/views/statisticalQueryManagement/securityGuardDetail.vue
index f83a833..e488957 100644
--- a/src/views/statisticalQueryManagement/securityGuardDetail.vue
+++ b/src/views/statisticalQueryManagement/securityGuardDetail.vue
@@ -121,7 +121,7 @@
display: false
},
{
- label: "保安公司",
+ label: "企业名称",
prop: "deptName",
width: 300,
// search: true,
diff --git a/src/views/talk/talk.vue b/src/views/talk/talk.vue
index d4c70fc..fc66e3e 100644
--- a/src/views/talk/talk.vue
+++ b/src/views/talk/talk.vue
@@ -87,6 +87,7 @@
index: true,
viewBtn: true,
selection: true,
+ menu:false,
dialogClickModal: false,
...this.$store.state.control.clearOtherBut,
menu: false,
--
Gitblit v1.9.3