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.
Files changed (76) hide show
  1. package/.eslintrc.js +16 -16
  2. package/SystemClient.iml +2 -5
  3. package/build/webpack.base.conf.js +21 -11
  4. package/package.json +6 -4
  5. package/src/App.vue +24 -24
  6. package/src/components/Main.vue +626 -476
  7. package/src/components/TabButton.vue +201 -0
  8. package/src/components/Tabs.vue +67 -0
  9. package/src/components/addressManage/AddressCascadingMenu.vue +145 -0
  10. package/src/components/equipment/EquipmentManage.vue +1 -1
  11. package/src/components/equipment/PcAdd.vue +5 -5
  12. package/src/components/equipment/PcList.vue +5 -5
  13. package/src/components/equipment/PhoneAdd.vue +26 -13
  14. package/src/components/equipment/PhoneList.vue +31 -21
  15. package/src/components/equipment/PosAdd.vue +231 -45
  16. package/src/components/equipment/PosList.vue +198 -68
  17. package/src/components/equipment/PosManage.vue +80 -9
  18. package/src/components/equipment/PosManageBoth.vue +125 -0
  19. package/src/components/equipment/PosParamAdd.vue +236 -0
  20. package/src/components/equipment/PosParamList.vue +121 -0
  21. package/src/components/equipment/PosParamManage.vue +51 -0
  22. package/src/components/parammanage/ParamManage.vue +2 -2
  23. package/src/components/parammanage/ParamPage.vue +30 -8
  24. package/src/components/parammanage/SinglePage.vue +4 -4
  25. package/src/components/server/ImageVieweTest.vue +56 -0
  26. package/src/components/server/ImageViewer.vue +350 -0
  27. package/src/components/server/LoadData.vue +21 -2
  28. package/src/components/server/Login.vue +784 -519
  29. package/src/components/server/ModifyPw.vue +12 -7
  30. package/src/components/server/PcdBuildingSelect.vue +241 -0
  31. package/src/components/server/ResSelect.vue +5 -0
  32. package/src/components/server/ResSelectGroup.vue +159 -103
  33. package/src/components/server/RightTree.vue +289 -204
  34. package/src/filiale/dongguan/Main.vue +715 -0
  35. package/src/filiale/dongguan/system.js +5 -0
  36. package/src/filiale/konggang/Login.vue +840 -0
  37. package/src/filiale/konggang/system.js +7 -0
  38. package/src/filiale/qianneng/ModifyPw.vue +107 -0
  39. package/src/filiale/qianneng/system.js +7 -0
  40. package/src/filiale/rizhao/LeftTree.vue +111 -0
  41. package/src/filiale/rizhao/Login.vue +791 -0
  42. package/src/filiale/rizhao/Main.vue +606 -0
  43. package/src/filiale/rizhao/system.js +14 -0
  44. package/src/filiale/yuchuan/Login.vue +889 -0
  45. package/src/filiale/yuchuan/Main.vue +773 -0
  46. package/src/filiale/yuchuan/system.js +10 -0
  47. package/src/plugins/EncryptUtil.js +53 -0
  48. package/src/plugins/GetLoginInfoService.js +76 -70
  49. package/src/plugins/HeatGetLoginInfoService.js +491 -0
  50. package/src/plugins/validation.js +9 -1
  51. package/src/stores/HeatAppData.js +38 -0
  52. package/src/styles/less/aofeng/standard.less +446 -60
  53. package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
  54. package/src/styles/less/aofeng/themeOne/systemStyle.less +12 -12
  55. package/src/styles/less/aofeng/themeOne.less +4 -1
  56. package/src/styles/less/manageStyle/manageStyle/manageChile.less +180 -0
  57. package/src/styles/less/manageStyle/manageStyle/manageStyle.less +1102 -0
  58. package/src/styles/less/manageStyle/manageStyle/safeStyle.less +498 -0
  59. package/src/styles/less/tables.less +50 -0
  60. package/src/styles/less/type.less +16 -3
  61. package/src/styles/less/variables.less +6 -3
  62. package/src/system.js +34 -1
  63. package/src/util/Daiban.json +12 -0
  64. package/static/images/lefticon//345/220/210/345/220/214/347/256/241/347/220/206.png +0 -0
  65. package/static/logo.png +0 -0
  66. package/static/newStyle/about-us.png +0 -0
  67. package/static/rizhao.png +0 -0
  68. package/yarn-error.log +6896 -0
  69. package/.gradle/3.5/file-changes/last-build.bin +0 -0
  70. package/.gradle/3.5/taskHistory/taskHistory.lock +0 -0
  71. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  72. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  73. package/.gradle/5.2.1/gc.properties +0 -0
  74. package/.gradle/buildOutputCleanup/built.bin +0 -0
  75. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  76. package/.gradle/buildOutputCleanup/cache.properties.lock +0 -1
@@ -0,0 +1,10 @@
1
+ // 分公司特殊组件页面注册
2
+
3
+ exports.specialComp = {
4
+ 'login': (resolve) => {
5
+ require(['./Login'], resolve)
6
+ },
7
+ 'home-page': (resolve) => {
8
+ require(['./Main'], resolve)
9
+ }
10
+ }
@@ -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
- // rsa加密
8
- let encrypt = new JSEncrypt();
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 = encrypt.encrypt(JSON.stringify(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
- let getChangeMeterman = await Vue.resetpost('/rs/search', {
103
- source: 'this.getParentByType($organization$).getChildByName($换表员$).getUsers()',
104
- userid: Vue.$login.f.id
105
- }, {resolveMsg: null, rejectMsg: null})
106
- let changemeterman = []
107
- for (let i = 0; i < getChangeMeterman.data.length; i++) {
108
- changemeterman.push(getChangeMeterman.data[i])
109
- }
110
- Vue.$login.f.f_changemeterman = changemeterman
111
- }catch (error) {
112
- Vue.$login.f.f_changemeterman = []
113
- console.log('换表员模块',error)
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
- let getPaperUseman = await Vue.resetpost('/rs/search', {
133
- source: 'this.getParentByType($organization$).getChildByName($票据使用人$).getUsers()',
134
- userid: Vue.$login.f.id
135
- }, {resolveMsg: null, rejectMsg: null})
136
- let perperuseman = []
137
- for (let i = 0; i < getPaperUseman.data.length; i++) {
138
- perperuseman.push(getPaperUseman.data[i])
139
- }
140
- Vue.$login.f.f_paperUseman = perperuseman
141
- }catch (error) {
142
- Vue.$login.f.f_paperUseman = []
143
- console.log('票据使用人模块',error)
144
-
145
- }
146
- // 票据分配人
147
- try {
148
- let getPaperAllotman = await Vue.resetpost('/rs/search', {
149
- source: 'this.getParentByType($organization$).getChildByName($票据分配人$).getUsers()',
150
- userid: Vue.$login.f.id
151
- }, {resolveMsg: null, rejectMsg: null})
152
- let paperallotman = []
153
- for (let i = 0; i < getPaperAllotman.data.length; i++) {
154
- paperallotman.push(getPaperAllotman.data[i])
155
- }
156
- Vue.$login.f.f_paperAllotman = paperallotman
157
- }catch (error) {
158
- Vue.$login.f.f_paperAllotman = []
159
- console.log('票据分配人模块',error)
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
- setInterval(()=> {
180
- let http = new HttpResetClass()
181
- http.load('POST', `rs/user/access/${Vue.$login.f.id}`, {}, {resolveMsg: null, rejectMsg: null}).then((req) => {
182
- if(req.data.status==710){
183
- Vue.prototype.$connectNumber = 0 //重连剩余次数
184
- Vue.prototype.$socket.close() // 关闭websocket连接
185
- Vue.showMessage(req.data.msg+",您将被强制退出系统", ['confirm']).then((res) => {
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
- }, 2 * 60 * 1000)
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
- return loginGen(name, password)
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) {