From f5d88e4f31bec1d77721c0795afde3f3a571e9aa Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 11 Aug 2021 15:55:13 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/zhba_enterprises
---
src/views/securityEquipment/car.vue | 77 +++
src/views/securityEquipment/equipments.js | 8
src/views/securityGuard/securityGuardDetail.vue | 22
src/api/system/user.js | 4
src/views/securityUnit/index.vue | 67 +++
vue.config.js | 6
src/router/views/index.js | 16
src/views/securityGuard/securityGuard.vue | 81 +++
src/views/securityEquipment/gun.js | 6
src/views/securityEquipment/gun.vue | 8
src/views/people/expression.vue | 39 +
src/api/talk/talk.js | 50 ++
src/views/dispatch/dispatchChildoperable.vue | 28
src/views/securityEquipment/equipments.vue | 77 +++
src/views/securityEquipment/car.js | 18
src/views/dispatch/dispatchChildoperableSee.vue | 31
src/views/resource/uploadNotice.vue | 8
src/api/performance/performance.js | 27
src/views/securityUnitChild/index.vue | 246 ++++++++++--
src/views/talk/talk.vue | 266 ++++++++++++++
src/views/securityUnitChild/data.js | 2
src/views/people/job.vue | 8
22 files changed, 937 insertions(+), 158 deletions(-)
diff --git a/src/api/performance/performance.js b/src/api/performance/performance.js
index accb99b..1082fb3 100644
--- a/src/api/performance/performance.js
+++ b/src/api/performance/performance.js
@@ -11,16 +11,25 @@
}
})
}
+// export const getPerformanceInfo = (securityid) => {
+// return request({
+// url: '/api/performance/page',
+// method: 'get',
+// params: {
+// securityid
+// }
+// })
+// }
-export const getPerformanceInfo = (id) => {
- return request({
- url: '/api/performance/detail',
- method: 'get',
- params: {
- id
- }
- })
-}
+// export const getPerformanceInfo = (securityid) => {
+// return request({
+// url: '/api/performance/detail',
+// method: 'get',
+// params: {
+// securityid
+// }
+// })
+// }
export const add = (row) => {
return request({
diff --git a/src/api/system/user.js b/src/api/system/user.js
index 7cb2d0f..147dd73 100644
--- a/src/api/system/user.js
+++ b/src/api/system/user.js
@@ -80,12 +80,12 @@
})
}
-export const getUserPractitionersInfo = (cardid) => {
+export const getUserPractitionersInfo = (securityid) => {
return request({
url: '/api/experience/selectExperienceInfo',
method: 'get',
params: {
- cardid,
+ securityid,
}
})
}
diff --git a/src/api/talk/talk.js b/src/api/talk/talk.js
new file mode 100644
index 0000000..58088fb
--- /dev/null
+++ b/src/api/talk/talk.js
@@ -0,0 +1,50 @@
+import request from '@/router/axios';
+
+export const getList = (current, size, params) => {
+ return request({
+ url: '/api/blade-talk/talk/page',
+ method: 'get',
+ params: {
+ ...params,
+ current,
+ size,
+ }
+ })
+}
+
+export const getDetail = (id) => {
+ return request({
+ url: '/api/blade-talk/talk/detail',
+ method: 'get',
+ params: {
+ id
+ }
+ })
+}
+
+export const remove = (ids) => {
+ return request({
+ url: '/api/blade-talk/talk/remove',
+ method: 'post',
+ params: {
+ ids,
+ }
+ })
+}
+
+export const add = (row) => {
+ return request({
+ url: '/api/blade-talk/talk/submit',
+ method: 'post',
+ data: row
+ })
+}
+
+export const update = (row) => {
+ return request({
+ url: '/api/blade-talk/talk/submit',
+ method: 'post',
+ data: row
+ })
+}
+
diff --git a/src/router/views/index.js b/src/router/views/index.js
index b3e3304..583156f 100644
--- a/src/router/views/index.js
+++ b/src/router/views/index.js
@@ -236,6 +236,20 @@
import ( /* webpackChunkName: "views" */ '@/views/desk/notice')
}]
},
+ {
+ path: '/talk',
+ component: Layout,
+ redirect: '/talk/talk',
+ children: [{
+ path: 'index',
+ name: '心里咨询',
+ meta: {
+ i18n: 'dict'
+ },
+ component: () =>
+ import( /* webpackChunkName: "views" */ '@/views/talk/talk')
+ }]
+ },
{
path: '/workreport',
component: Layout,
@@ -854,4 +868,4 @@
import ( /* webpackChunkName: "views" */ '@/views/exam/papers')
}]
}
-]
\ No newline at end of file
+]
diff --git a/src/views/dispatch/dispatchChildoperable.vue b/src/views/dispatch/dispatchChildoperable.vue
index 6b1bb8a..cf1bf5f 100644
--- a/src/views/dispatch/dispatchChildoperable.vue
+++ b/src/views/dispatch/dispatchChildoperable.vue
@@ -200,8 +200,8 @@
{
label: "派遣单位",
prop: "dispatcherCompany",
- addDisplay: false,
- editDisplay: false,
+ // addDisplay: false,
+ // editDisplay: false,
},
// {
// label: "派遣单位",
@@ -229,13 +229,9 @@
{
label: "保安公司",
prop: "deptId",
- labelWidth: 120,
search: true,
- overHidden: true,
- type: "tree",
- searchSpan: 4,
- cascaderItem: ["name"],
- // cascaderItem: ["city", "area"],
+ type: "select",
+ cascaderItem: ["securityName"],
props: {
label: "title",
value: "id",
@@ -250,19 +246,17 @@
],
},
{
- width: 120,
label: "保安员",
- prop: "name",
- labelWidth: 120,
- type: "tree",
+ prop: "securityName",
+ type: "select",
search: true,
- searchSpan: 4,
- cell: true,
+ // cell: true,
+ // hide: true,
props: {
label: "realName",
value: "id",
},
- dicUrl: `/api/blade-user/page-security-unit?deptId={{deptId}}`,
+ dicUrl: `/api/blade-user/page-security-units?deptId={{key}}`,
rules: [
{
required: true,
@@ -271,6 +265,7 @@
},
],
},
+
// {
// width: 120,
// label: "保安人名称",
@@ -767,8 +762,9 @@
const data = res.data.data;
this.page1.total = data.total;
this.data1 = data.records;
- console.log(this.data1, 1);
+ console.log(this.data1, 1111111111111111111111111);
this.loading1 = false;
+ this.$nextTick(() => this.$refs.crudrec1.dicInit("cascader"));
});
},
//派遣记录
diff --git a/src/views/dispatch/dispatchChildoperableSee.vue b/src/views/dispatch/dispatchChildoperableSee.vue
index 77bb38a..d7ff409 100644
--- a/src/views/dispatch/dispatchChildoperableSee.vue
+++ b/src/views/dispatch/dispatchChildoperableSee.vue
@@ -743,21 +743,22 @@
// console.log(page);
console.log(this.userInfo, "userInfo");
var values;
- const { releaseTimeRange } = this.query1;
- if (releaseTimeRange) {
- values = {
- ...params,
- beginTime: releaseTimeRange[0],
- overTime: releaseTimeRange[1],
- ...this.query,
- };
- values.releaseTimeRange = null;
- } else {
- values = {
- ...params,
- ...this.query,
- };
- }
+ // const { releaseTimeRange } = this.query1;
+ // if (releaseTimeRange) {
+ values = {
+ ...params,
+ // beginTime: releaseTimeRange[0],
+ // overTime: releaseTimeRange[1],
+ userIds: this.userInfo.user_id,
+ ...this.query,
+ };
+ // values.releaseTimeRange = null;
+ // } else {
+ // values = {
+ // ...params,
+ // ...this.query,
+ // };
+ // }
// values
diff --git a/src/views/people/expression.vue b/src/views/people/expression.vue
index 0b173bc..dc6c443 100644
--- a/src/views/people/expression.vue
+++ b/src/views/people/expression.vue
@@ -79,8 +79,8 @@
trackRecordColumn,
} from "./data";
import { getUserPractitionersInfo } from "@/api/system/user";
-import { add, update, page, remove } from "@/api/performance/performance";
import { mapGetters } from "vuex";
+import { add, update, page, remove } from "@/api/performance/performance";
export default {
data() {
let baseUrl = "https://cli.avuejs.com/api/area";
@@ -461,7 +461,7 @@
return "";
},
//
- onLoad1(page, params = {}) {
+ onLoad1(page1, params = {}) {
this.loading1 = true;
// params["cardid"] = this.cardid;
// params["name"] = this.name;
@@ -486,20 +486,31 @@
// };
// }
var cardid = this.userInfo.user_id;
- console.log(this.userInfo, "111111111111");
- getPerformancePageInfo(cardid).then((res) => {
- // // page.currentPage,
- // // page.pageSize,
- // // Object.assign(params, this.query)
- // // values
- console.log(res);
- // const data = res.data.data;
- // this.page1.total = data.total;
- // this.data1 = data.records;
- // console.log(this.data1, 1);
- // this.loading1 = false;
+ // console.log(this.userInfo, "111111111111");
+ // getPerformancePageInfo(cardid).then((res) => {
+ // // // page.currentPage,
+ // // // page.pageSize,
+ // // // Object.assign(params, this.query)
+ // // // values
+ // // const data = res.data.data;
+ // // this.page1.total = data.total;
+ // // this.data1 = data;
+ // console.log(res, 1231131);
+ // // console.log(this.data1, 1);
+ // // this.loading1 = false;
+ // });
+ var param = {
+ securityid: cardid,
+ };
+ page(this.current, this.size, param).then((res2) => {
+ const data = res2.data.data;
+ this.page1.total = data.total;
+ this.data1 = data.records;
+ console.log(this.data1, 1);
+ this.loading1 = false;
});
},
+
//派遣记录
// saveLock(name, val) {
// localStorage.setItem(name, val);
diff --git a/src/views/people/job.vue b/src/views/people/job.vue
index 1d777d1..b432bd9 100644
--- a/src/views/people/job.vue
+++ b/src/views/people/job.vue
@@ -491,11 +491,11 @@
// // Object.assign(params, this.query)
// // values
console.log(res);
- // const data = res.data.data;
+ const data = res.data.data;
// this.page1.total = data.total;
- // this.data1 = data.records;
- // console.log(this.data1, 1);
- // this.loading1 = false;
+ this.data1 = data;
+ console.log(this.data1, 1);
+ this.loading1 = false;
});
},
//派遣记录
diff --git a/src/views/resource/uploadNotice.vue b/src/views/resource/uploadNotice.vue
index 89f1d96..bbebdbd 100644
--- a/src/views/resource/uploadNotice.vue
+++ b/src/views/resource/uploadNotice.vue
@@ -97,6 +97,7 @@
searchMenuSpan: 6,
border: false,
index: true,
+ // align: center,
stripe: true,
viewBtn: true,
selection: true,
@@ -148,6 +149,12 @@
trigger: "blur",
},
],
+ },
+ {
+ label: "预览图",
+ prop: "link",
+ dataType: "string",
+ type: "img",
},
{
label: "附件拓展名",
@@ -333,6 +340,7 @@
const data = res.data.data;
this.page.total = data.total;
this.data = data.records;
+ console.log(this.data);
this.loading = false;
this.selectionClear();
});
diff --git a/src/views/securityEquipment/car.js b/src/views/securityEquipment/car.js
index 5a25dc3..4807633 100644
--- a/src/views/securityEquipment/car.js
+++ b/src/views/securityEquipment/car.js
@@ -9,13 +9,13 @@
]
export var column = [
- {
- label: "id",
- prop: "id",
- hide: true,
- editDisplay: false,
- addDisplay: false
- },
+ // {
+ // label: "id",
+ // prop: "id",
+ // hide: true,
+ // editDisplay: false,
+ // addDisplay: false
+ // },
{
label: "车牌号码",
prop: "carNumber",
@@ -64,7 +64,7 @@
},
{
label: "保安公司",
- prop: "tenantName",
+ prop: "deptId",
rules: [{
required: true,
message: "请输入保安公司",
@@ -117,7 +117,7 @@
// search: true,
type: "date",
format: "yyyy-MM-dd",
- valueFormat: "timestamp",
+ valueFormat: "yyyy-MM-dd",
searchSpan: 4,
overHidden: true,
rules: [{
diff --git a/src/views/securityEquipment/car.vue b/src/views/securityEquipment/car.vue
index 9d99626..ebb96b4 100644
--- a/src/views/securityEquipment/car.vue
+++ b/src/views/securityEquipment/car.vue
@@ -18,6 +18,14 @@
>
<template slot="menuLeft">
<el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport"
+ >批量导入
+ </el-button>
+ <el-button
type="danger"
size="small"
plain
@@ -27,6 +35,24 @@
</el-button>
</template>
</avue-crud>
+ <el-dialog
+ title="车辆导入"
+ append-to-body
+ :visible.sync="excelBox"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption"
+ v-model="excelForm"
+ :upload-after="uploadAfter"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</div>
</basic-container>
</template>
@@ -38,6 +64,34 @@
export default {
data() {
return {
+ excelBox: false,
+ excelForm: {},
+ excelOption: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/car/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
loading: true,
selectionList: [],
page: {
@@ -71,6 +125,18 @@
},
},
methods: {
+ handleImport() {
+ this.excelBox = true;
+ },
+ uploadAfter(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox = false;
+ this.refreshChange();
+ done();
+ },
+ handleTemplate() {
+ window.open(`/api/car/export-template`);
+ },
sizeChange(val) {
this.page1.currentPage = 1;
this.page1.pageSize = val;
@@ -88,8 +154,9 @@
// delete form.id;
// for (var k = 0; k < 13; k++) {
// console.log
- form["deptId"] = form.tenantName;
- delete form.tenantName;
+ // form["deptId"] = form.tenantName;
+ // delete form.tenantName;
+ // console.log(form);
adddata(form).then(
(res) => {
this.onLoad(this.page);
@@ -117,9 +184,9 @@
this.onLoad(this.page);
},
rowUpdate(row, index, done, loading) {
- console.log(row);
- row["deptId"] = row.tenantName;
- delete row.tenantName;
+ // console.log(row);
+ // row["deptId"] = row.tenantName;
+ // delete row.tenantName;
update(row).then(
() => {
this.onLoad(this.page);
diff --git a/src/views/securityEquipment/equipments.js b/src/views/securityEquipment/equipments.js
index cad65f0..d54209a 100644
--- a/src/views/securityEquipment/equipments.js
+++ b/src/views/securityEquipment/equipments.js
@@ -62,7 +62,7 @@
},
{
label: "保安公司",
- prop: "tenantName",
+ prop: "deptId",
rules: [{
required: true,
message: "请输入组织机构",
@@ -112,11 +112,11 @@
{
label: "出厂日期",
prop: "dateForProduction",
- // search: true,
type: "date",
- format: "yyyy-MM-dd",
- valueFormat: "timestamp",
+ format: 'yyyy-MM-dd',
searchSpan: 4,
+ // span:8,
+ valueFormat: 'yyyy-MM-dd',
overHidden: true,
rules: [{
required: true,
diff --git a/src/views/securityEquipment/equipments.vue b/src/views/securityEquipment/equipments.vue
index 2373581..399fed4 100644
--- a/src/views/securityEquipment/equipments.vue
+++ b/src/views/securityEquipment/equipments.vue
@@ -18,6 +18,14 @@
>
<template slot="menuLeft">
<el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport"
+ >批量导入
+ </el-button>
+ <el-button
type="danger"
size="small"
plain
@@ -27,6 +35,24 @@
</el-button>
</template>
</avue-crud>
+ <el-dialog
+ title="题库导入"
+ append-to-body
+ :visible.sync="excelBox"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption"
+ v-model="excelForm"
+ :upload-after="uploadAfter"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</div>
</basic-container>
</template>
@@ -38,6 +64,34 @@
export default {
data() {
return {
+ excelBox: false,
+ excelForm: {},
+ excelOption: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/examSubjectChoices/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
loading: true,
selectionList: [],
page: {
@@ -71,6 +125,18 @@
},
},
methods: {
+ handleImport() {
+ this.excelBox = true;
+ },
+ uploadAfter(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox = false;
+ this.refreshChange();
+ done();
+ },
+ handleTemplate() {
+ window.open(`/api/examSubjectChoices/export-template`);
+ },
sizeChange(val) {
this.page1.currentPage = 1;
this.page1.pageSize = val;
@@ -87,8 +153,9 @@
// var form = this.data[0];
// delete form.id;
// for (var k = 0; k < 13; k++) {
- form["deptId"] = form.tenantName;
- delete form.tenantName;
+ console.log(form, "12135");
+ // form["deptId"] = form.tenantName;
+ // delete form.tenantName;
adddata(form).then(
(res) => {
this.onLoad(this.page);
@@ -116,9 +183,9 @@
this.onLoad(this.page);
},
rowUpdate(row, index, done, loading) {
- // console.log(row);
- row["deptId"] = row.tenantName;
- delete row.tenantName;
+ // row["deptId"] = row.tenantName;
+ // delete row.tenantName;
+ console.log(row.deptId);
update(row).then(
() => {
this.onLoad(this.page);
diff --git a/src/views/securityEquipment/gun.js b/src/views/securityEquipment/gun.js
index 3ad2692..c3dceef 100644
--- a/src/views/securityEquipment/gun.js
+++ b/src/views/securityEquipment/gun.js
@@ -70,7 +70,7 @@
},
{
label: "保安公司",
- prop: "tenantName",
+ prop: "deptId",
labelWidth: 160,
rules: [{
required: true,
@@ -112,7 +112,7 @@
// search: true,
type: "date",
format: "yyyy-MM-dd",
- valueFormat: "timestamp",
+ valueFormat: "yyyy-MM-dd",
// width: 110,
// overHidden: true,
// search: true,
@@ -129,7 +129,7 @@
// search: true,
type: "date",
format: "yyyy-MM-dd",
- valueFormat: "timestamp",
+ valueFormat: "yyyy-MM-dd",
searchSpan: 4,
overHidden: true,
rules: [{
diff --git a/src/views/securityEquipment/gun.vue b/src/views/securityEquipment/gun.vue
index 2eec3f4..85e30ab 100644
--- a/src/views/securityEquipment/gun.vue
+++ b/src/views/securityEquipment/gun.vue
@@ -87,8 +87,8 @@
// var form = this.data[0];
// delete form.id;
// for (var k = 0; k < 13; k++) {
- form["deptId"] = form.tenantName;
- delete form.tenantName;
+ // form["deptId"] = form.tenantName;
+ // delete form.tenantName;
adddata(form).then(
(res) => {
this.onLoad(this.page);
@@ -117,8 +117,8 @@
},
rowUpdate(row, index, done, loading) {
// console.log(row);
- row["deptId"] = row.tenantName;
- delete row.tenantName;
+ // row["deptId"] = row.tenantName;
+ // delete row.tenantName;
update(row).then(
() => {
this.onLoad(this.page);
diff --git a/src/views/securityGuard/securityGuard.vue b/src/views/securityGuard/securityGuard.vue
index 5a1b00b..ed4b4c3 100644
--- a/src/views/securityGuard/securityGuard.vue
+++ b/src/views/securityGuard/securityGuard.vue
@@ -39,6 +39,14 @@
>
<template slot="menuLeft">
<el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport1"
+ >批量导入
+ </el-button>
+ <el-button
type="danger"
style="display: none"
size="small"
@@ -208,6 +216,24 @@
</template>
</avue-crud>
</el-dialog>
+ <el-dialog
+ title="保安员导入"
+ append-to-body
+ :visible.sync="excelBox1"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption1"
+ v-model="excelForm1"
+ :upload-after="uploadAfter1"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate1">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</basic-container>
</el-col>
</el-row>
@@ -254,6 +280,34 @@
}
};
return {
+ excelBox1: false,
+ excelForm1: {},
+ excelOption1: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/examSubjectChoices/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
form: {},
search: {},
roleBox: false,
@@ -871,6 +925,19 @@
}
},
methods: {
+ handleImport1() {
+ this.excelBox1 = true;
+ },
+ uploadAfter1(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox1 = false;
+ // this.refreshChange();
+ done();
+ },
+ handleTemplate1() {
+ window.open(`/api/examSubjectChoices/export-template`);
+ },
+
//行点击事件
rowClick(row) {
this.$router.push({
@@ -929,18 +996,18 @@
entryTime: item.entryTime,
name: row.realName,
leaving: item.leaving,
- cardid: row.cardid,
+ securityid: row.id,
post: item.post,
responsibilities: item.responsibilities,
};
userPractitionersList.push(info);
});
}
- var IdCardNo = row.cardid;
+ var IdCardNo = row.id;
add(row).then(
() => {
const experience = {
- cardid: IdCardNo,
+ securityid: IdCardNo,
userPractitionersInfo: userPractitionersList,
};
//新增从业信息
@@ -979,20 +1046,20 @@
entryTime: item.entryTime,
name: row.realName,
leaving: item.leaving,
- cardid: row.cardid,
+ securityid: row.id,
post: item.post,
responsibilities: item.responsibilities,
};
userPractitionersList.push(info);
});
}
- var IdCardNo = row.cardid;
+ var IdCardNo = row.id;
//值替换,education 放在页面会卡死
row.education = row.education1;
update(row).then(
() => {
const experience = {
- cardid: IdCardNo,
+ securityid: IdCardNo,
userPractitionersInfo: userPractitionersList,
};
//更新从业信息
@@ -1167,7 +1234,7 @@
}
var userInfo = res.data.data;
//获取用户从业信息
- getUserPractitionersInfo(userInfo.cardid).then((res1) => {
+ getUserPractitionersInfo(userInfo.id).then((res1) => {
that.form.UserPractitionersInfo = res1.data.data;
});
});
diff --git a/src/views/securityGuard/securityGuardDetail.vue b/src/views/securityGuard/securityGuardDetail.vue
index 398bdaa..aae9a3f 100644
--- a/src/views/securityGuard/securityGuardDetail.vue
+++ b/src/views/securityGuard/securityGuardDetail.vue
@@ -37,7 +37,13 @@
trackRecordColumn,
} from "./data";
import { getUserPractitionersInfo } from "@/api/system/user";
-import { add, update, page, remove } from "@/api/performance/performance";
+import {
+ getPerformanceInfo,
+ add,
+ update,
+ page,
+ remove,
+} from "@/api/performance/performance";
export default {
data() {
return {
@@ -154,16 +160,20 @@
getPractitionersPageInfo() {
var that = this;
//获取用户从业信息
- console.log(this.cardid, "cid");
- getUserPractitionersInfo(this.cardid).then((res1) => {
+ console.log(this.id, "cid");
+ getUserPractitionersInfo(this.id).then((res1) => {
that.data1 = res1.data.data;
});
},
//查询当前保安员的现实表现记录信息
getPerformancePageInfo() {
//获取现实表现信息
+ // getPerformanceInfo(this.id).then((res) => {
+ // that.data2 = res1.data.data;
+ // console.log(that.data2, 1);
+ // });
var param = {
- cardid: this.cardid,
+ securityid: this.id,
};
page(this.current, this.size, param).then((res2) => {
const data = res2.data.data;
@@ -174,7 +184,7 @@
});
},
rowSave2(form, done, loading) {
- form.cardid = this.cardid;
+ form.securityid = this.id;
add(form).then(
(res) => {
this.getPerformancePageInfo(this.page2);
@@ -192,7 +202,7 @@
// }
},
rowUpdate2(row, index, done, loading) {
- row.cardid = this.cardid;
+ row.securityid = this.id;
update(row).then(
() => {
this.getPerformancePageInfo(this.page2);
diff --git a/src/views/securityUnit/index.vue b/src/views/securityUnit/index.vue
index 5526813..11a1bd6 100644
--- a/src/views/securityUnit/index.vue
+++ b/src/views/securityUnit/index.vue
@@ -35,6 +35,14 @@
@click.stop="rowSave"
>新增</el-button
>
+ <el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport1"
+ >批量导入
+ </el-button>
</template>
<template slot="menuLeft">
<el-button
@@ -100,6 +108,24 @@
</div>
</div>
</div>
+ <el-dialog
+ title="保安单位导入"
+ append-to-body
+ :visible.sync="excelBox1"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption1"
+ v-model="excelForm1"
+ :upload-after="uploadAfter1"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate1">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</basic-container>
</template>
@@ -120,6 +146,34 @@
var w = 160,
s = 12;
return {
+ excelBox1: false,
+ excelForm1: {},
+ excelOption1: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/examSubjectChoices/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
loading: true, //保安单位基本信息
selectionList: [],
page: {
@@ -266,6 +320,19 @@
},
},
methods: {
+ handleImport1() {
+ this.excelBox1 = true;
+ },
+ uploadAfter1(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox1 = false;
+ // this.refreshChange();
+ done();
+ },
+ handleTemplate1() {
+ window.open(`/api/examSubjectChoices/export-template`);
+ },
+
// handleChangeTABS(column) {
// this.typeTABS = column;
// // this.$message.success(JSON.stringify(column));
diff --git a/src/views/securityUnitChild/data.js b/src/views/securityUnitChild/data.js
index 7c4e691..bea710b 100644
--- a/src/views/securityUnitChild/data.js
+++ b/src/views/securityUnitChild/data.js
@@ -155,6 +155,7 @@
}, {
label: "股东",
prop: "shareholder",
+ searchLabelWidth: 55,
search: true,
labelWidth: w,
span: s,
@@ -224,6 +225,7 @@
prop: "name",
search: true,
labelWidth: w,
+ searchLabelWidth: 55,
span: s,
}, {
label: "职务",
diff --git a/src/views/securityUnitChild/index.vue b/src/views/securityUnitChild/index.vue
index accac2a..3a6ff7c 100644
--- a/src/views/securityUnitChild/index.vue
+++ b/src/views/securityUnitChild/index.vue
@@ -29,67 +29,127 @@
</template>
</avue-crud>-->
<!-- 表单组件 -->
- <avue-form ref="form" v-model="obj0" :option="option0">
- <!-- <template slot-scope="scope" slot="menuForm">
+ <basic-container>
+ <avue-form ref="form" v-model="obj0" :option="option0">
+ <!-- <template slot-scope="scope" slot="menuForm">
<el-button @click="tip">自定义按钮</el-button>
</template> -->
- </avue-form>
+ </avue-form>
+ </basic-container>
</span>
<span v-else-if="typeTABS.prop === 'tab2'">
<!-- <span v-if="typeTABS.prop === 'tab2'"> -->
- <avue-crud
- :option="option1"
- :data="data1"
- :page.sync="page1"
- ref="crudrec1"
- :table-loading="loading1"
- @row-save="rowSave1"
- @search-change="searchChange1"
- @search-reset="searchReset1"
- @row-update="rowUpdate1"
- @row-del="rowDel1"
- @selection-change="selectionChange1"
- @refresh-change="refreshChange1"
- >
- <template slot="menuLeft">
- <el-button
- type="danger"
- size="small"
- plain
- icon="el-icon-delete"
- @click="handleDelete1"
- >删 除
- </el-button>
- </template>
- </avue-crud>
+ <basic-container>
+ <avue-crud
+ :option="option1"
+ :data="data1"
+ :page.sync="page1"
+ ref="crudrec1"
+ :table-loading="loading1"
+ @row-save="rowSave1"
+ @search-change="searchChange1"
+ @search-reset="searchReset1"
+ @row-update="rowUpdate1"
+ @row-del="rowDel1"
+ @selection-change="selectionChange1"
+ @refresh-change="refreshChange1"
+ >
+ <template slot="menuLeft">
+ <el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport"
+ >批量导入
+ </el-button>
+ <el-button
+ type="danger"
+ size="small"
+ plain
+ icon="el-icon-delete"
+ @click="handleDelete1"
+ >删 除
+ </el-button>
+ </template>
+ </avue-crud>
+ </basic-container>
</span>
<span v-else-if="typeTABS.prop === 'tab3'">
- <avue-crud
- :option="option2"
- :data="data2"
- :page.sync="page2"
- ref="crudrec2"
- :table-loading="loading2"
- @row-save="rowSave2"
- @search-change="searchChange2"
- @search-reset="searchReset2"
- @row-update="rowUpdate2"
- @row-del="rowDel2"
- @selection-change="selectionChange2"
- @refresh-change="refreshChange2"
+ <basic-container>
+ <avue-crud
+ :option="option2"
+ :data="data2"
+ :page.sync="page2"
+ ref="crudrec2"
+ :table-loading="loading2"
+ @row-save="rowSave2"
+ @search-change="searchChange2"
+ @search-reset="searchReset2"
+ @row-update="rowUpdate2"
+ @row-del="rowDel2"
+ @selection-change="selectionChange2"
+ @refresh-change="refreshChange2"
+ >
+ <template slot="menuLeft">
+ <el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport1"
+ >批量导入
+ </el-button>
+ <el-button
+ type="danger"
+ size="small"
+ plain
+ icon="el-icon-delete"
+ @click="handleDelete2"
+ >删 除
+ </el-button>
+ </template>
+ </avue-crud>
+ </basic-container>
+ </span>
+
+ <el-dialog
+ title="出资人导入"
+ append-to-body
+ :visible.sync="excelBox"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption"
+ v-model="excelForm"
+ :upload-after="uploadAfter"
>
- <template slot="menuLeft">
- <el-button
- type="danger"
- size="small"
- plain
- icon="el-icon-delete"
- @click="handleDelete2"
- >删 除
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
</el-button>
</template>
- </avue-crud>
- </span>
+ </avue-form>
+ </el-dialog>
+
+ <el-dialog
+ title="管理人导入"
+ append-to-body
+ :visible.sync="excelBox1"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption1"
+ v-model="excelForm1"
+ :upload-after="uploadAfter1"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate1">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</div>
</template>
@@ -137,6 +197,62 @@
],
};
return {
+ excelBox: false, //出资人
+ excelForm: {},
+ excelOption: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/car/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
+ excelBox1: false, //管理人
+ excelForm1: {},
+ excelOption1: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/examSubjectChoices/import-examSubject",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
typeTABS: {}, //标签页
optionTABS: {
column: [
@@ -262,6 +378,34 @@
},
},
methods: {
+ handleImport() {
+ //出资人
+ this.excelBox = true;
+ },
+ uploadAfter(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox = false;
+ this.refreshChange();
+ done();
+ },
+ handleTemplate() {
+ window.open(`/api/car/export-template`);
+ },
+
+ handleImport1() {
+ //管理人
+ this.excelBox1 = true;
+ },
+ uploadAfter1(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox1 = false;
+ // this.refreshChange();
+ done();
+ },
+ handleTemplate1() {
+ window.open(`/api/examSubjectChoices/export-template`);
+ },
+
handleChangeTABS(column) {
this.typeTABS = column;
// this.$message.success(JSON.stringify(column));
diff --git a/src/views/talk/talk.vue b/src/views/talk/talk.vue
new file mode 100644
index 0000000..5a14376
--- /dev/null
+++ b/src/views/talk/talk.vue
@@ -0,0 +1,266 @@
+<template>
+ <basic-container>
+ <avue-crud :option="option"
+ :table-loading="loading"
+ :data="data"
+ :page.sync="page"
+ :permission="permissionList"
+ :before-open="beforeOpen"
+ v-model="form"
+ ref="crud"
+ @row-update="rowUpdate"
+ @row-save="rowSave"
+ @row-del="rowDel"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @selection-change="selectionChange"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @refresh-change="refreshChange"
+ @on-load="onLoad">
+ <template slot="menuLeft">
+ <el-button type="danger"
+ size="small"
+ icon="el-icon-delete"
+ plain
+ v-if="permission.talk_delete"
+ @click="handleDelete">删 除
+ </el-button>
+ </template>
+ </avue-crud>
+ </basic-container>
+</template>
+
+<script>
+ import {getList, getDetail, add, update, remove} from "@/api/talk/talk";
+ import {mapGetters} from "vuex";
+
+ export default {
+ data() {
+ return {
+ form: {},
+ query: {},
+ loading: true,
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0
+ },
+ selectionList: [],
+ option: {
+ height:'auto',
+ calcHeight: 30,
+ tip: false,
+ searchShow: true,
+ searchMenuSpan: 6,
+ border: true,
+ index: true,
+ viewBtn: true,
+ selection: true,
+ dialogClickModal: false,
+ column: [
+ {
+ label: "标题",
+ prop: "title",
+ search: true,
+ rules: [{
+ required: true,
+ message: "请输入标题",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "谈话对象",
+ search: true,
+ prop: "realName",
+ type: "tree",
+ props: {
+ label: "realName",
+ value: "id",
+ },
+ dicUrl: `/api/blade-user/selectInr?deptid=`+this.$store.getters.userInfo.dept_id,
+ rules: [{
+ required: true,
+ message: "请输入谈话对象",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "谈话内容",
+ prop: "talkcontent",
+ rules: [{
+ required: true,
+ message: "请输入谈话内容",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "谈话时间",
+ prop: "talktime",
+ type: "date",
+ format: "yyyy-MM-dd hh:mm:ss",
+ valueFormat: "yyyy-MM-dd hh:mm:ss",
+ rules: [{
+ required: true,
+ message: "请输入谈话时间",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "结论",
+ prop: "conclusion",
+ rules: [{
+ required: true,
+ message: "请输入结论",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "评价",
+ prop: "evaluate",
+ rules: [{
+ required: true,
+ message: "请输入评价",
+ trigger: "blur"
+ }]
+ },
+ ]
+ },
+ data: []
+ };
+ },
+ computed: {
+ ...mapGetters(["permission", "userInfo"]),
+ permissionList() {
+ return {
+ addBtn: this.vaildData(this.permission.talk_add, false),
+ viewBtn: this.vaildData(this.permission.talk_view, false),
+ delBtn: this.vaildData(this.permission.talk_delete, false),
+ editBtn: this.vaildData(this.permission.talk_edit, false)
+ };
+ },
+ ids() {
+ let ids = [];
+ this.selectionList.forEach(ele => {
+ ids.push(ele.id);
+ });
+ return ids.join(",");
+ }
+ },
+ methods: {
+ rowSave(row, done, loading) {
+ add(row).then(() => {
+ row.deptid=this.$store.getters.userInfo.dept_id
+ this.onLoad(this.page);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ done();
+ }, error => {
+ loading();
+ window.console.log(error);
+ });
+ },
+ rowUpdate(row, index, done, loading) {
+ update(row).then(() => {
+ this.onLoad(this.page);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ done();
+ }, error => {
+ loading();
+ console.log(error);
+ });
+ },
+ rowDel(row) {
+ this.$confirm("确定将选择数据删除?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning"
+ })
+ .then(() => {
+ return remove(row.id);
+ })
+ .then(() => {
+ this.onLoad(this.page);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ });
+ },
+ handleDelete() {
+ if (this.selectionList.length === 0) {
+ this.$message.warning("请选择至少一条数据");
+ return;
+ }
+ this.$confirm("确定将选择数据删除?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning"
+ })
+ .then(() => {
+ return remove(this.ids);
+ })
+ .then(() => {
+ this.onLoad(this.page);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ this.$refs.crud.toggleSelection();
+ });
+ },
+ 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);
+ },
+ searchChange(params, done) {
+ this.query = params;
+ this.page.currentPage = 1;
+ this.onLoad(this.page, params);
+ done();
+ },
+ selectionChange(list) {
+ this.selectionList = list;
+ },
+ selectionClear() {
+ this.selectionList = [];
+ this.$refs.crud.toggleSelection();
+ },
+ currentChange(currentPage){
+ this.page.currentPage = currentPage;
+ },
+ sizeChange(pageSize){
+ this.page.pageSize = pageSize;
+ },
+ refreshChange() {
+ this.onLoad(this.page, this.query);
+ },
+ onLoad(page, params = {}) {
+ this.loading = true;
+ getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+ const data = res.data.data;
+ this.page.total = data.total;
+ this.data = data.records;
+ this.loading = false;
+ this.selectionClear();
+ });
+ }
+ }
+ };
+</script>
+
+<style>
+</style>
diff --git a/vue.config.js b/vue.config.js
index f3063ef..2da0d17 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -28,10 +28,10 @@
'/api': {
//本地服务接口地址
// target: 'http://localhost',
- // target: 'http://192.168.0.114:81',//钟W
+ target: 'http://192.168.0.114:81',//钟W
// target: 'http://localhost:81',//原W
- target: 'http://192.168.0.108:81',//原W
- // target: 'http://192.168.0.104:80',//唐N
+ // target: 'http://192.168.0.108:81',//原W
+ // target: 'http://192.168.0.109:81',//唐N
//远程演示服务地址,可用于直接启动项目
// target: 'https://saber.bladex.vip/api',
ws: true,
--
Gitblit v1.9.3