system-clients 3.2.5 → 3.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +16 -16
- package/SystemClient.iml +2 -5
- package/build/webpack.base.conf.js +21 -11
- package/package.json +6 -4
- package/src/App.vue +24 -24
- package/src/components/Main.vue +626 -476
- package/src/components/TabButton.vue +201 -0
- package/src/components/Tabs.vue +67 -0
- package/src/components/addressManage/AddressCascadingMenu.vue +145 -0
- package/src/components/equipment/EquipmentManage.vue +1 -1
- package/src/components/equipment/PcAdd.vue +5 -5
- package/src/components/equipment/PcList.vue +5 -5
- package/src/components/equipment/PhoneAdd.vue +26 -13
- package/src/components/equipment/PhoneList.vue +31 -21
- package/src/components/equipment/PosAdd.vue +231 -45
- package/src/components/equipment/PosList.vue +198 -68
- package/src/components/equipment/PosManage.vue +80 -9
- package/src/components/equipment/PosManageBoth.vue +125 -0
- package/src/components/equipment/PosParamAdd.vue +236 -0
- package/src/components/equipment/PosParamList.vue +121 -0
- package/src/components/equipment/PosParamManage.vue +51 -0
- package/src/components/parammanage/ParamManage.vue +2 -2
- package/src/components/parammanage/ParamPage.vue +30 -8
- package/src/components/parammanage/SinglePage.vue +4 -4
- package/src/components/server/ImageVieweTest.vue +56 -0
- package/src/components/server/ImageViewer.vue +350 -0
- package/src/components/server/LoadData.vue +21 -2
- package/src/components/server/Login.vue +784 -519
- package/src/components/server/ModifyPw.vue +12 -7
- package/src/components/server/PcdBuildingSelect.vue +241 -0
- package/src/components/server/ResSelect.vue +5 -0
- package/src/components/server/ResSelectGroup.vue +159 -103
- package/src/components/server/RightTree.vue +289 -204
- package/src/filiale/dongguan/Main.vue +715 -0
- package/src/filiale/dongguan/system.js +5 -0
- package/src/filiale/konggang/Login.vue +840 -0
- package/src/filiale/konggang/system.js +7 -0
- package/src/filiale/qianneng/ModifyPw.vue +107 -0
- package/src/filiale/qianneng/system.js +7 -0
- package/src/filiale/rizhao/LeftTree.vue +111 -0
- package/src/filiale/rizhao/Login.vue +791 -0
- package/src/filiale/rizhao/Main.vue +606 -0
- package/src/filiale/rizhao/system.js +14 -0
- package/src/filiale/yuchuan/Login.vue +889 -0
- package/src/filiale/yuchuan/Main.vue +773 -0
- package/src/filiale/yuchuan/system.js +10 -0
- package/src/plugins/EncryptUtil.js +53 -0
- package/src/plugins/GetLoginInfoService.js +76 -70
- package/src/plugins/HeatGetLoginInfoService.js +491 -0
- package/src/plugins/validation.js +9 -1
- package/src/stores/HeatAppData.js +38 -0
- package/src/styles/less/aofeng/standard.less +446 -60
- package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
- package/src/styles/less/aofeng/themeOne/systemStyle.less +12 -12
- package/src/styles/less/aofeng/themeOne.less +4 -1
- package/src/styles/less/manageStyle/manageStyle/manageChile.less +180 -0
- package/src/styles/less/manageStyle/manageStyle/manageStyle.less +1102 -0
- package/src/styles/less/manageStyle/manageStyle/safeStyle.less +498 -0
- package/src/styles/less/tables.less +50 -0
- package/src/styles/less/type.less +16 -3
- package/src/styles/less/variables.less +6 -3
- package/src/system.js +34 -1
- package/src/util/Daiban.json +12 -0
- package/static/images/lefticon//345/220/210/345/220/214/347/256/241/347/220/206.png +0 -0
- package/static/logo.png +0 -0
- package/static/newStyle/about-us.png +0 -0
- package/static/rizhao.png +0 -0
- package/yarn-error.log +6896 -0
- package/.gradle/3.5/file-changes/last-build.bin +0 -0
- package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
- package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
- package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
- package/.gradle/5.2.1/gc.properties +0 -0
- package/.gradle/buildOutputCleanup/built.bin +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/.gradle/buildOutputCleanup/cache.properties.lock +0 -1
@@ -0,0 +1,53 @@
|
|
1
|
+
import AesEncryptJS from "crypto-js"
|
2
|
+
import RsaEncryptJS from 'jsencrypt'
|
3
|
+
|
4
|
+
export default {
|
5
|
+
/**
|
6
|
+
* AES加密
|
7
|
+
* @param word
|
8
|
+
* @returns {*}
|
9
|
+
*/
|
10
|
+
AESEncrypt(word, encryKey){
|
11
|
+
var key = AesEncryptJS.enc.Utf8.parse(encryKey);
|
12
|
+
var srcs = AesEncryptJS.enc.Utf8.parse(word);
|
13
|
+
var encrypted = AesEncryptJS.AES.encrypt(srcs, key, {mode:AesEncryptJS.mode.ECB,padding: AesEncryptJS.pad.Pkcs7});
|
14
|
+
return encrypted.toString();
|
15
|
+
},
|
16
|
+
/**
|
17
|
+
* AES解密
|
18
|
+
* @param word
|
19
|
+
* @returns {*}
|
20
|
+
*/
|
21
|
+
AESDecrypt(word, encryKey){
|
22
|
+
var key = AesEncryptJS.enc.Utf8.parse(encryKey);
|
23
|
+
var decrypt = AesEncryptJS.AES.decrypt(word, key, {mode:AesEncryptJS.mode.ECB,padding: AesEncryptJS.pad.Pkcs7});
|
24
|
+
var ret = AesEncryptJS.enc.Utf8.stringify(decrypt).toString();
|
25
|
+
try{
|
26
|
+
return JSON.parse(ret) ;
|
27
|
+
}catch (e){
|
28
|
+
return ret
|
29
|
+
}
|
30
|
+
},
|
31
|
+
/**
|
32
|
+
* RSA加密
|
33
|
+
* @param word
|
34
|
+
* @returns {*}
|
35
|
+
*/
|
36
|
+
RSAEncrypt(word){
|
37
|
+
let encrypt = new RsaEncryptJS();
|
38
|
+
encrypt.setPublicKey('MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqPvovSfXcwBbW8cKMCgwqNpsYuzF8RPAPFb7LGsnVo44JhM/xxzDyzoYtdfNmtbIuKVi9PzIsyp6rg+09gbuI6UGwBZ5DWBDBMqv5MPdOF5dCQkB2Bbr5yPfURPENypUz+pBFBg41d+BC+rwRiXELwKy7Y9caD/MtJyHydj8OUwIDAQAB');
|
39
|
+
let resdata = encrypt.encrypt(word);
|
40
|
+
return resdata.toString();
|
41
|
+
},
|
42
|
+
/**
|
43
|
+
* RSA解密
|
44
|
+
* @param word
|
45
|
+
* @returns {*}
|
46
|
+
*/
|
47
|
+
RSADecrypt(word){
|
48
|
+
let encrypt = new RsaEncryptJS();
|
49
|
+
encrypt.setPrivateKey('MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAKo++i9J9dzAFtbxwowKDCo2mxi7MXxE8A8VvssaydWjjgmEz/HHMPLOhi1182a1si4pWL0/MizKnquD7T2Bu4jpQbAFnkNYEMEyq/kw904Xl0JCQHYFuvnI99RE8Q3KlTP6kEUGDjV34EL6vBGJcQvArLtj1xoP8y0nIfJ2Pw5TAgMBAAECgYAGGB8IllMwxceLhjf6n1l0IWRH7FuHIUieoZ6k0p6rASHSgWiYNRMxfecbtX8zDAoG0QAWNi7rn40ygpR5gS1fWDAKhmnhKgQIT6wW0VmD4hraaeyP78iy8BLhlvblri2nCPIhDH5+l96v7D47ZZi3ZSOzcj89s1eS/k7/N4peEQJBAPEtGGJY+lBoCxQMhGyzuzDmgcS1Un1ZE2pt+XNCVl2b+T8fxWJH3tRRR8wOY5uvtPiK1HM/IjT0T5qwQeH8Yk0CQQC0tcv3d/bDb7bOe9QzUFDQkUSpTdPWAgMX2OVPxjdq3Sls9oA5+fGNYEy0OgyqTjde0b4iRzlD1O0OhLqPSUMfAkEAh5FIvqezdRU2/PsYSR4yoAdCdLdT+h/jGRVefhqQ/6eYUJJkWp15tTFHQX3pIe9/s6IeT/XyHYAjaxmevxAmlQJBAKSdhvQjf9KAjZKDEsa7vyJ/coCXuQUWSCMNHbcR5aGfXgE4e45UtUoIE1eKGcd6AM6LWhx3rR6xdFDpb9je8BkCQB0SpevGfOQkMk5i8xkEt9eeYP0fi8nv6eOUcK96EXbzs4jV2SAoQJ9oJegPtPROHbhIvVUmNQTbuP10Yjg59+8=');
|
50
|
+
let resdata = encrypt.decrypt(word);
|
51
|
+
return JSON.parse(resdata.toString()) ;
|
52
|
+
},
|
53
|
+
}
|
@@ -1,19 +1,14 @@
|
|
1
1
|
import Vue from 'vue'
|
2
|
-
import JSEncrypt from 'jsencrypt'
|
3
2
|
import {HttpResetClass} from 'vue-client'
|
4
|
-
|
5
|
-
let loginGen = async function (name, password) {
|
3
|
+
import cryptJS from './EncryptUtil'
|
4
|
+
let loginGen = async function (name, password, cue) {
|
6
5
|
let data = {name: name, password: password}
|
7
|
-
|
8
|
-
let
|
9
|
-
encrypt.setPublicKey('MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqPvovSfXcwBbW8cKMCgwqNpsYuzF8RPAPFb7LGsnVo44JhM/xxzDyzoYtdfNmtbIuKVi9PzIsyp6rg+09gbuI6UGwBZ5DWBDBMqv5MPdOF5dCQkB2Bbr5yPfURPENypUz+pBFBg41d+BC+rwRiXELwKy7Y9caD/MtJyHydj8OUwIDAQAB');
|
10
|
-
console.log(data)
|
11
|
-
|
12
|
-
let getLogin = await Vue.resetpost('/rs/logic/getLogin', data, {resolveMsg: null, rejectMsg: null}, 'RSA')
|
6
|
+
data = '$'+cryptJS.RSAEncrypt(JSON.stringify(data))
|
7
|
+
let getLogin = await Vue.resetpost('/rs/logic/getLogin', data, {resolveMsg: null, rejectMsg: null})
|
13
8
|
if (getLogin.data.states === '登录成功') {
|
14
9
|
// 调用远程登录服务,获取所有有权访问的功能
|
15
10
|
data = {username: name, password: password}
|
16
|
-
data =
|
11
|
+
data = cryptJS.RSAEncrypt(JSON.stringify(data))
|
17
12
|
let resource = await Vue.resetpost(`/rs/user/userLogin/客服系统`, data, {
|
18
13
|
resolveMsg: null,
|
19
14
|
rejectMsg: null
|
@@ -98,20 +93,20 @@ let loginGen = async function (name, password) {
|
|
98
93
|
console.log('安装人模块',error)
|
99
94
|
}
|
100
95
|
// 获取换表员
|
101
|
-
try {
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
}catch (error) {
|
112
|
-
|
113
|
-
|
114
|
-
}
|
96
|
+
// try {
|
97
|
+
// let getChangeMeterman = await Vue.resetpost('/rs/search', {
|
98
|
+
// source: 'this.getParentByType($organization$).getChildByName($换表员$).getUsers()',
|
99
|
+
// userid: Vue.$login.f.id
|
100
|
+
// }, {resolveMsg: null, rejectMsg: null})
|
101
|
+
// let changemeterman = []
|
102
|
+
// for (let i = 0; i < getChangeMeterman.data.length; i++) {
|
103
|
+
// changemeterman.push(getChangeMeterman.data[i])
|
104
|
+
// }
|
105
|
+
// Vue.$login.f.f_changemeterman = changemeterman
|
106
|
+
// }catch (error) {
|
107
|
+
// Vue.$login.f.f_changemeterman = []
|
108
|
+
// console.log('换表员模块',error)
|
109
|
+
// }
|
115
110
|
// 获取资源服务权限
|
116
111
|
try {
|
117
112
|
let getLic = await Vue.resetpost('/rs/search', {data: {
|
@@ -127,37 +122,37 @@ let loginGen = async function (name, password) {
|
|
127
122
|
Vue.$login.f.f_gasman = []
|
128
123
|
console.log('资源服务权限',error)
|
129
124
|
}
|
130
|
-
// 票据使用人
|
131
|
-
try {
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
}catch (error) {
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
}
|
146
|
-
// 票据分配人
|
147
|
-
try {
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
}catch (error) {
|
158
|
-
|
159
|
-
|
160
|
-
}
|
125
|
+
// // 票据使用人
|
126
|
+
// try {
|
127
|
+
// let getPaperUseman = await Vue.resetpost('/rs/search', {
|
128
|
+
// source: 'this.getParentByType($organization$).getChildByName($票据使用人$).getUsers()',
|
129
|
+
// userid: Vue.$login.f.id
|
130
|
+
// }, {resolveMsg: null, rejectMsg: null})
|
131
|
+
// let perperuseman = []
|
132
|
+
// for (let i = 0; i < getPaperUseman.data.length; i++) {
|
133
|
+
// perperuseman.push(getPaperUseman.data[i])
|
134
|
+
// }
|
135
|
+
// Vue.$login.f.f_paperUseman = perperuseman
|
136
|
+
// }catch (error) {
|
137
|
+
// Vue.$login.f.f_paperUseman = []
|
138
|
+
// console.log('票据使用人模块',error)
|
139
|
+
//
|
140
|
+
// }
|
141
|
+
// // 票据分配人
|
142
|
+
// try {
|
143
|
+
// let getPaperAllotman = await Vue.resetpost('/rs/search', {
|
144
|
+
// source: 'this.getParentByType($organization$).getChildByName($票据分配人$).getUsers()',
|
145
|
+
// userid: Vue.$login.f.id
|
146
|
+
// }, {resolveMsg: null, rejectMsg: null})
|
147
|
+
// let paperallotman = []
|
148
|
+
// for (let i = 0; i < getPaperAllotman.data.length; i++) {
|
149
|
+
// paperallotman.push(getPaperAllotman.data[i])
|
150
|
+
// }
|
151
|
+
// Vue.$login.f.f_paperAllotman = paperallotman
|
152
|
+
// }catch (error) {
|
153
|
+
// Vue.$login.f.f_paperAllotman = []
|
154
|
+
// console.log('票据分配人模块',error)
|
155
|
+
// }
|
161
156
|
// TODO 处理界面细节
|
162
157
|
try {
|
163
158
|
let viewDetails = await Vue.resetpost('rs/search', {
|
@@ -176,20 +171,25 @@ let loginGen = async function (name, password) {
|
|
176
171
|
await proc(Vue.$login.f)
|
177
172
|
}
|
178
173
|
// 定时发送心跳
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
if (res === 'confirm') {
|
174
|
+
if (cue){
|
175
|
+
setInterval(()=> {
|
176
|
+
let http = new HttpResetClass()
|
177
|
+
//暂时不出现不出现异地登录校验
|
178
|
+
http.load('POST', `rs/user/access/${Vue.$login.f.id}`, {}, {resolveMsg: null, rejectMsg: null}).then((req) => {
|
179
|
+
if(req.data.forcestate && req.data.forcestate == 1){
|
180
|
+
Vue.showMessage("您被强制下线!", ['confirm']).then((res) => {
|
187
181
|
location.reload()
|
188
|
-
}
|
189
|
-
})
|
190
|
-
|
191
|
-
|
192
|
-
|
182
|
+
})
|
183
|
+
}else if(req.data.status==710){
|
184
|
+
Vue.showMessage(req.data.msg+",您将被强制退出系统", ['confirm']).then((res) => {
|
185
|
+
if (res === 'confirm') {
|
186
|
+
location.reload()
|
187
|
+
}
|
188
|
+
})
|
189
|
+
}
|
190
|
+
})
|
191
|
+
}, 2 * 60 * 1000)
|
192
|
+
}
|
193
193
|
}
|
194
194
|
|
195
195
|
} else {
|
@@ -204,6 +204,8 @@ let GetLoginInfoService = {
|
|
204
204
|
afterLogin: [],
|
205
205
|
//验证码开关
|
206
206
|
Verification: true,
|
207
|
+
//登录信息展示开关
|
208
|
+
depPrompt: true,
|
207
209
|
install (Vue, options) {
|
208
210
|
// 给vue增添对话框显示方法
|
209
211
|
Vue.$login = Vue.prototype.$login = GetLoginInfoService
|
@@ -217,9 +219,13 @@ let GetLoginInfoService = {
|
|
217
219
|
* 登录
|
218
220
|
* @param name
|
219
221
|
* @param password
|
222
|
+
* @param cue true/false 是/否显示异地登录
|
220
223
|
*/
|
221
|
-
login (name, password) {
|
222
|
-
|
224
|
+
login (name, password, cue) {
|
225
|
+
if (cue === undefined || cue === null || cue === ''){
|
226
|
+
cue = true
|
227
|
+
}
|
228
|
+
return loginGen(name, password, cue)
|
223
229
|
},
|
224
230
|
|
225
231
|
convertToIn (val) {
|