sasp-admin 0.2.57

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 (141) hide show
  1. package/index.js +227 -0
  2. package/package.json +19 -0
  3. package/router.js +83 -0
  4. package/src/assets/font/iconfont.css +1346 -0
  5. package/src/assets/font/iconfont.eot +0 -0
  6. package/src/assets/font/iconfont.js +1 -0
  7. package/src/assets/font/iconfont.svg +827 -0
  8. package/src/assets/font/iconfont.ttf +0 -0
  9. package/src/assets/font/iconfont.woff +0 -0
  10. package/src/assets/images/loading-bar.gif +0 -0
  11. package/src/assets/js/adminInstall.js +36 -0
  12. package/src/assets/js/api/apiAdmin.js +613 -0
  13. package/src/assets/js/global/dataGlobal.js +260 -0
  14. package/src/assets/js/global/logGlobal.js +22 -0
  15. package/src/assets/js/global/paramGlobal.js +67 -0
  16. package/src/assets/js/global/resGlobal.js +91 -0
  17. package/src/assets/js/global/userGlobal.js +283 -0
  18. package/src/components/complexViewRendering.vue +601 -0
  19. package/src/components/ifmLink.vue +71 -0
  20. package/src/components/public/data/plDataCascader.vue +85 -0
  21. package/src/components/public/data/plDataRadio.vue +73 -0
  22. package/src/components/public/data/plDataRadioGroup.vue +70 -0
  23. package/src/components/public/data/plDataSelect.vue +856 -0
  24. package/src/components/public/data/plDatePicker.vue +159 -0
  25. package/src/components/public/org/bg.png +0 -0
  26. package/src/components/public/org/sysOrgPosUserSelect.vue +1237 -0
  27. package/src/components/public/org/sysOrgPosUserSelectDark.vue +1402 -0
  28. package/src/components/public/org/sysOrgPosUserSelectNew.vue +1527 -0
  29. package/src/components/public/upload/images/compress.png +0 -0
  30. package/src/components/public/upload/images/emipty.png +0 -0
  31. package/src/components/public/upload/images/excel.png +0 -0
  32. package/src/components/public/upload/images/file.png +0 -0
  33. package/src/components/public/upload/images/pdf.png +0 -0
  34. package/src/components/public/upload/images/powerpoint.png +0 -0
  35. package/src/components/public/upload/images/project.png +0 -0
  36. package/src/components/public/upload/images/sound.png +0 -0
  37. package/src/components/public/upload/images/txt.png +0 -0
  38. package/src/components/public/upload/images/video.png +0 -0
  39. package/src/components/public/upload/images/visio.png +0 -0
  40. package/src/components/public/upload/images/word.png +0 -0
  41. package/src/components/public/upload/plImage.vue +287 -0
  42. package/src/components/public/upload/plImgUpload.vue +137 -0
  43. package/src/components/public/upload/plUpload.vue +1124 -0
  44. package/src/components/public/upload/uploadImg.js +8 -0
  45. package/src/main.js +0 -0
  46. package/src/views/VueMenuView.vue +143 -0
  47. package/src/views/cloudMenuView.vue +125 -0
  48. package/src/views/complex/config/complex.vue +501 -0
  49. package/src/views/complex/config/complexSetting.vue +1250 -0
  50. package/src/views/complex/rendering/complexShow.vue +16 -0
  51. package/src/views/data/dataManage.vue +560 -0
  52. package/src/views/data/sysData.vue +292 -0
  53. package/src/views/event/eventManager/vueEventDiy.vue +1184 -0
  54. package/src/views/event/eventManager/vueEventMain.vue +108 -0
  55. package/src/views/event/eventManager/vueEventSys.vue +296 -0
  56. package/src/views/event/js/apiEvent.js +22 -0
  57. package/src/views/fileLog/fileDownloadLog.vue +437 -0
  58. package/src/views/initData/initData.vue +4316 -0
  59. package/src/views/log/dblog/logdbDevelop.vue +306 -0
  60. package/src/views/log/dblog/logdbEnt.vue +331 -0
  61. package/src/views/log/dblog/logdbGov.vue +395 -0
  62. package/src/views/log/error/logError.vue +553 -0
  63. package/src/views/log/loginlog/logManageDevOrSup.vue +357 -0
  64. package/src/views/log/loginlog/logManageEnt.vue +343 -0
  65. package/src/views/log/loginlog/logManageGov.vue +328 -0
  66. package/src/views/log/sms/logSms.vue +308 -0
  67. package/src/views/menu/component/menuManageComponent.vue +2402 -0
  68. package/src/views/menu/component/menuModule.vue +449 -0
  69. package/src/views/menu/menuLocal.vue +223 -0
  70. package/src/views/menu/menuManage.vue +1135 -0
  71. package/src/views/menu/tenantMenuManage.vue +1132 -0
  72. package/src/views/menuRouter/cview/cviewShow.vue +18 -0
  73. package/src/views/menuRouter/cviewMenuRouter.vue +183 -0
  74. package/src/views/menuRouter/menuView.vue +132 -0
  75. package/src/views/menuRouter/urlMenuRouter.vue +160 -0
  76. package/src/views/org/entOrgTree.vue +1050 -0
  77. package/src/views/org/ownerMenu/ownerMenuTree.vue +269 -0
  78. package/src/views/org/safeValidate/safeValidate.vue +469 -0
  79. package/src/views/org/sysEntOrgUserDetail.vue +3390 -0
  80. package/src/views/org/sysOrgDimension.vue +832 -0
  81. package/src/views/org/sysOrgPosUserDetail.vue +1648 -0
  82. package/src/views/org/sysOrgPosUserTree.vue +1101 -0
  83. package/src/views/org/sysOrgTree.vue +864 -0
  84. package/src/views/param/sysParam.vue +987 -0
  85. package/src/views/preview/pdfViewer.vue +82 -0
  86. package/src/views/resources/js/resourcesCommon.js +137 -0
  87. package/src/views/resources/resRouter/resView.vue +161 -0
  88. package/src/views/resources/resourcesTabs.vue +82 -0
  89. package/src/views/resources/tabs/comp/pageResPreview.vue +309 -0
  90. package/src/views/resources/tabs/comp/pageResRegister.vue +1120 -0
  91. package/src/views/resources/tabs/dataResources.vue +843 -0
  92. package/src/views/resources/tabs/pageResources.vue +970 -0
  93. package/src/views/role/allowMenu.vue +148 -0
  94. package/src/views/role/authRole/authRole.vue +427 -0
  95. package/src/views/role/authRole/component/allocateSetting.vue +1056 -0
  96. package/src/views/role/authRole/component/authSetting.vue +1196 -0
  97. package/src/views/role/commonRole/commonRole.vue +677 -0
  98. package/src/views/role/commonRole/compoment/allocateRoleMenuSetting.vue +335 -0
  99. package/src/views/role/commonRole/compoment/authLinkMenuTree.vue +55 -0
  100. package/src/views/role/commonRole/compoment/authSettingNew.vue +190 -0
  101. package/src/views/role/commonRole/compoment/commonSetting.vue +1576 -0
  102. package/src/views/role/commonRole/compoment/commonSettingAdjust.vue +584 -0
  103. package/src/views/role/commonRole/compoment/commonSettingNew.vue +572 -0
  104. package/src/views/role/commonRole/compoment/roleMenuPower.vue +226 -0
  105. package/src/views/role/commonRole/compoment/roleMenuPowerSetting.vue +69 -0
  106. package/src/views/role/commonRole/compoment/roleMenuSetting.vue +365 -0
  107. package/src/views/role/commonRole/compoment/roleSourceSetting.vue +229 -0
  108. package/src/views/role/commonRole/tenantCommonRole.vue +768 -0
  109. package/src/views/role/role.vue +135 -0
  110. package/src/views/role/roleMenuOption.vue +898 -0
  111. package/src/views/role/roleSynchroRemind.vue +399 -0
  112. package/src/views/role/sysRole.vue +1525 -0
  113. package/src/views/role/viewMenuOptDetail.vue +182 -0
  114. package/src/views/sms/sendSms.vue +164 -0
  115. package/src/views/station/orgStation.vue +561 -0
  116. package/src/views/tenant/appContentManager.vue +938 -0
  117. package/src/views/tenant/appManager.vue +642 -0
  118. package/src/views/tenant/tenantRoleManager.vue +670 -0
  119. package/src/views/tenant/tenantUserManager.vue +615 -0
  120. package/src/views/threeinone/compoment/safeCascadeSelect.vue +327 -0
  121. package/src/views/threeinone/init/safeInitRegion.vue +203 -0
  122. package/src/views/threeinone/safeManager.vue +927 -0
  123. package/src/views/threeinone/safeMenuManage.vue +565 -0
  124. package/src/views/threeinone/safeOrgSpv.vue +364 -0
  125. package/src/views/threeinone/safeSpv/safeSpvLeftTree.vue +109 -0
  126. package/src/views/threeinone/safeSpv/safeSpvMain.vue +335 -0
  127. package/src/views/threeinone/safeSpvEconView.vue +569 -0
  128. package/src/views/threeinone/safeValidateRegion.vue +328 -0
  129. package/src/views/urlResource/urlResource.vue +856 -0
  130. package/src/views/user/empowerUser/empowerEntUserManage.vue +415 -0
  131. package/src/views/user/empowerUser/empowerOrgTree.vue +167 -0
  132. package/src/views/user/empowerUser/empowerUserList.vue +633 -0
  133. package/src/views/user/empowerUser/empowerUserListMenuDeatil.vue +656 -0
  134. package/src/views/user/empowerUser/empowerUserListViewMenuTree.vue +257 -0
  135. package/src/views/user/empowerUser/empowerUserManage.vue +99 -0
  136. package/src/views/user/stationUserManage.vue +934 -0
  137. package/src/views/user/userManage.vue +737 -0
  138. package/src/views/user/userMangement.vue +938 -0
  139. package/src/views/user/viewMenu/viewMenu.vue +113 -0
  140. package/src/views/versionupdatetool/versionUpdateTool.vue +225 -0
  141. package/src/views/versionupdatetool/versioninfomation/verisonInfomationManagement.vue +68 -0
@@ -0,0 +1,343 @@
1
+ <template>
2
+ <el-container class="top_contain" >
3
+ <!--查询条件 -->
4
+ <el-header style="height: auto">
5
+ <div class="search-form-parent el-card">
6
+ <el-form :inline="true" :model="crud.searchForm" size="small"
7
+ class="demo-form-inline" @keyup.enter.native="crud.doSearch()" onSubmit="return false;">
8
+ <el-form-item label="登录时间" >
9
+ <el-date-picker type="date" v-model="crud.searchForm.loginTimeQ"
10
+ range-separator="至"
11
+ start-placeholder="开始日期"
12
+ end-placeholder="结束日期"
13
+ style="width: 140px" >
14
+
15
+ </el-date-picker> -
16
+ <el-date-picker type="date" v-model="crud.searchForm.loginTimeZ" style="width: 140px" ></el-date-picker>
17
+ </el-form-item>
18
+
19
+ <el-form-item label="账号" style="margin-left: 20px">
20
+ <el-input v-model="crud.searchForm.userAccount" style="width:120px" ></el-input>
21
+ </el-form-item>
22
+ <el-form-item label="姓名" style="margin-left: 20px">
23
+ <el-input v-model="crud.searchForm.userName" style="width: 120px" ></el-input>
24
+ </el-form-item>
25
+
26
+ <el-form-item label="所在地区" label-position="right" style="margin-left: 20px" >
27
+ <el-select v-model="crud.searchForm.city" style="width: 150px" @change="formTypeChangeCity">
28
+ <el-option
29
+ v-for="item in formTypeCityOptions"
30
+ :key="item.id"
31
+ :label="item.dataName"
32
+ :value="item.id"
33
+ >
34
+ </el-option>
35
+ </el-select>-
36
+ <el-select v-model="crud.searchForm.area" style="width: 150px" @change="formTypeChangeArea" >
37
+ <el-option
38
+ v-for="item in formTypeAreaOptions"
39
+ :key="item.id"
40
+ :label="item.dataName"
41
+ :value="item.id"
42
+ >
43
+ </el-option>
44
+ </el-select>-
45
+ <el-select v-model="crud.searchForm.street" style="width: 150px" >
46
+ <el-option
47
+ v-for="item in formTypeStreetOptions"
48
+ :key="item.id"
49
+ :label="item.dataName"
50
+ :value="item.id">
51
+ </el-option>
52
+ </el-select>
53
+ </el-form-item>
54
+
55
+
56
+ <el-form-item>
57
+ <el-button type="primary" icon="el-icon-search" @click="crud.doSearch()">查询</el-button>
58
+ <el-button icon="el-icon-close" @click="crud.resetSearch()">清空</el-button>
59
+ </el-form-item>
60
+
61
+
62
+ </el-form>
63
+ </div>
64
+ </el-header>
65
+
66
+ <!--查询体 列表展示-->
67
+ <el-main id="tableMain" style="height: 100%">
68
+ <el-container style="height:100%" class="table-list-container">
69
+ <!--列表-->
70
+ <el-main style="height: 100%;" ref="tableMain" >
71
+ <el-table :data="crud.dataStore.records" :ref="crud.tableRef" stripe border height="100%" style="width: 100%;">
72
+ <el-table-column type="index" label=" " align="center" width="60"></el-table-column>
73
+ <!-- <el-table-column label="单位及部门" prop="orgName" align="center"></el-table-column>-->
74
+ <el-table-column label="账号" prop="userAccount" align="center" >
75
+ <template slot-scope="scope">
76
+ {{loginUser.userAccount}}
77
+ </template>
78
+ </el-table-column>
79
+ <el-table-column label="姓名" prop="userName" align="center" >
80
+ <template slot-scope="scope">
81
+ {{loginUser.userName}}
82
+ </template>
83
+ </el-table-column>
84
+ <el-table-column label="登录时间" prop="loginTime" :formatter="viewDateFormat" align="center" >
85
+ </el-table-column>
86
+ <!-- <el-table-column label="时长" prop="totalTime" align="center" >-->
87
+ <!-- </el-table-column>-->
88
+ <el-table-column label="登录IP" prop="clientIp" align="center" >
89
+ </el-table-column>
90
+
91
+ </el-table>
92
+ </el-main>
93
+ </el-container>
94
+ </el-main>
95
+
96
+ <!--底部分页-->
97
+ <el-footer>
98
+ <el-pagination
99
+ :ref="crud.pageRef"
100
+ :page-sizes="crud.pageSizes"
101
+ :page-size="crud.pageSize"
102
+ :current-page="crud.page"
103
+ :total="crud.dataStore.total"
104
+ @size-change="crud.sizeChange()"
105
+ @current-change="crud.currentPage()"
106
+ layout="total, sizes, prev, pager, next, jumper">
107
+ </el-pagination>
108
+ </el-footer>
109
+
110
+
111
+ </el-container>
112
+ </template>
113
+
114
+ <script>
115
+
116
+
117
+ export default {
118
+ //接收传过来的数据
119
+ name:"log-manage-ent",
120
+ show:true,
121
+ data() {
122
+ return {
123
+ releaseStatus:'1', //发布状态
124
+ releaseStatusDefault:'0',
125
+ conditionMap:{},
126
+ loginUser: this.USER_GLOBAL.getLoginUser(),//获取登录用户信息
127
+ crud : new this.CrudUtil({
128
+ vue: this,
129
+ entityName:"loginLog",
130
+ url:this.api.loginLog.url,
131
+ searchForm: {
132
+ order:"CREATE_TIME DESC"
133
+ },
134
+ noClearSearchColumns:["userType"],
135
+ initNoSearch:true
136
+ }),
137
+ formInline: {
138
+ user: '',
139
+ region: ''
140
+ },
141
+ formTypeCityOptions:[],
142
+ formTypeAreaOptions:[],
143
+ formTypeStreetOptions:[],
144
+ formData:{
145
+ id:"", 'orgName':"",'userAccount':"",'userName':"",'loginTime':"",'totalTime':"", 'clientIp':""
146
+ }, //弹出框初始值
147
+
148
+
149
+ }
150
+ },
151
+
152
+
153
+ created(){
154
+ let vm = this;
155
+ this.initData();
156
+ },
157
+ watch: {
158
+ //监听日期表单变化 crud.searchForm.area
159
+ //当父级类型变化11时候自己数据清空
160
+ 'crud.searchForm.city'(){
161
+ this.$set(this.crud.searchForm,"area","");
162
+ },
163
+ 'crud.searchForm.area'(){
164
+ this.$set(this.crud.formData,"street","");
165
+ }
166
+
167
+ },
168
+ methods: {
169
+ //当城市变化时 获取地区
170
+ formTypeChangeCity(){
171
+ let vm = this;
172
+ vm.formTypeAreaOptions = []; //重新置空
173
+ let {city} = vm.crud.searchForm;
174
+ vm.axios.post(this.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
175
+ "parentId":city}).then(function (ret) {
176
+ vm.formTypeAreaOptions = ret.data;
177
+ });
178
+ },
179
+ //当地区发生变化时候,查询街道
180
+ formTypeChangeArea(){
181
+ let vm = this;
182
+ vm.formTypeStreetOptions = []; //重新置空
183
+ let {area} = vm.crud.searchForm;
184
+ vm.axios.post(this.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
185
+ "parentId":area}).then(function (ret) {
186
+ vm.formTypeStreetOptions = ret.data;
187
+ });
188
+ },
189
+
190
+ //初始化数据加载
191
+ initData(){
192
+ let vm = this;
193
+ let urlParam = window.location.href; //从URL中获取日志类型
194
+ let userType = urlParam.slice(urlParam.indexOf('=')+1,urlParam.length); //获取类型
195
+
196
+ //初始化下拉菜单地区
197
+ //下拉框数据
198
+ //地区查询 typeId="522eb83216004493b0e0eb729c564941"
199
+ vm.axios.post(this.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
200
+ "parentId":"57c615c7031c4759be0cc166340d1bed"}).then(function (ret) {
201
+ vm.formTypeCityOptions = ret.data;
202
+ });
203
+
204
+ console.log("当前请求的url",userType);
205
+ //查询当前系统用户id
206
+ vm.crud.search(); //出发查询条件
207
+ },
208
+
209
+ //重置查询条件
210
+ resetSearch() {
211
+ let vm = this;
212
+ let crud = vm.crud;
213
+ let objData = {};
214
+ let searchForm = crud.searchForm;
215
+ crud.noClearSearchColumns && crud.noClearSearchColumns.forEach(function (key) {
216
+ objData[key] = searchForm[key];
217
+ });
218
+ objData["page"] = "1";
219
+ crud.searchForm = Object.assign({}, objData);
220
+ crud.search(vm.checkSelectedMsg);
221
+ },
222
+
223
+
224
+ //日期格式化
225
+ viewDateFormat(value, time) {
226
+ let d = new Date(value.createTime);
227
+ let fmt = "yyyy-MM-dd HH:mm:ss";
228
+ if (d) {
229
+ let date = new Date(d);
230
+ let o = {
231
+ "M+": date.getMonth() + 1, //月份
232
+ "d+": date.getDate(), //日
233
+ "H+": date.getHours(), //小时
234
+ "m+": date.getMinutes(), //分
235
+ "s+": date.getSeconds(), //秒
236
+ "q+": Math.floor((date.getMonth() + 3) / 3), //季度
237
+ "S": date.getMilliseconds() //毫秒
238
+ };
239
+ if (/(y+)/.test(fmt))
240
+ fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
241
+ for (let k in o)
242
+ if (new RegExp("(" + k + ")").test(fmt))
243
+ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
244
+ } else {
245
+ fmt = '无';
246
+ }
247
+ return fmt;
248
+ }
249
+
250
+
251
+
252
+
253
+ }
254
+ }
255
+
256
+ </script>
257
+
258
+ <style scoped>
259
+ legend{
260
+ font-size: 14px;
261
+ }
262
+ .button_header{
263
+ position: absolute;
264
+ height: 60px!important;
265
+ text-align: center;
266
+ line-height: 60px;
267
+ bottom: 0;
268
+ border-top: 1px solid #f2f2f2;
269
+ background-color: white;
270
+ margin: auto;
271
+ width: 100%;
272
+ right: 0;
273
+ z-index: 99;
274
+ }
275
+ .control_box{
276
+ padding-right: 100px;
277
+ position: relative;
278
+ }
279
+ .control_box_zero{
280
+ padding-right: 0;
281
+ position: relative;
282
+ }
283
+ .operate_div{
284
+ position: absolute;
285
+ right: 0;
286
+ top: 0;
287
+ bottom: 0;
288
+ margin: auto;
289
+ width: 100px;
290
+ }
291
+ .operate_div i{
292
+ /*margin-right: 20px;*/
293
+ cursor: pointer;
294
+ width: 30px;
295
+ height: 30px;
296
+ padding-top: 15px;
297
+ padding-left: 15px;
298
+ float: left;
299
+ }
300
+ .top_contain{
301
+ height: 100%;
302
+ /*border-radius:8px;*/
303
+ overflow-y: hidden;
304
+
305
+
306
+ }
307
+ .top_contain::-webkit-scrollbar{
308
+ width: 0;
309
+ }
310
+ </style>
311
+ <style>
312
+ .black .el-form-item__label{
313
+ color: black;
314
+ }
315
+ .green .el-form-item__label{
316
+ color: #27B5C3;
317
+ }
318
+ .settingClass{
319
+ width: 100%;
320
+ height: 40px;
321
+ position: relative;
322
+ }
323
+ .settingClass span{
324
+ position: absolute;
325
+ top:0;left:0;
326
+ right: 0;bottom: 0;
327
+ margin: auto;line-height: 40px;
328
+ }
329
+ .receiveObjNameLeft{
330
+ float: left;
331
+ width: 90%;
332
+ }
333
+ .receiveObjNameRight{
334
+ position: absolute;
335
+ float: right;
336
+ width: 10%;
337
+ top: 5px;
338
+ margin-left: 4px;
339
+ button:5px;
340
+
341
+ }
342
+
343
+ </style>
@@ -0,0 +1,328 @@
1
+ <template>
2
+ <el-container class="top_contain" >
3
+ <!--查询条件 -->
4
+ <el-header style="height: auto">
5
+ <div class="search-form-parent el-card">
6
+ <el-form :inline="true" :model="crud.searchForm" size="small"
7
+ class="demo-form-inline" @keyup.enter.native="crud.doSearch()" onSubmit="return false;" >
8
+ <el-form-item label="登录时间" >
9
+ <el-date-picker type="date" v-model="crud.searchForm.loginTimeQ"
10
+ range-separator="至"
11
+ start-placeholder="开始日期"
12
+ end-placeholder="结束日期"
13
+ style="width: 140px" >
14
+
15
+ </el-date-picker> -
16
+ <el-date-picker type="date" v-model="crud.searchForm.loginTimeZ" style="width: 140px" ></el-date-picker>
17
+ </el-form-item>
18
+
19
+ <el-form-item label="账号" style="margin-left: 20px">
20
+ <el-input v-model="crud.searchForm.userAccount" style="width:120px" ></el-input>
21
+ </el-form-item>
22
+ <el-form-item label="姓名" style="margin-left: 20px">
23
+ <el-input v-model="crud.searchForm.userName" style="width: 120px" ></el-input>
24
+ </el-form-item>
25
+
26
+ <el-form-item label="所在地区" label-position="right" style="margin-left: 20px" >
27
+ <el-select v-model="crud.searchForm.city" style="width: 150px" @change="formTypeChangeCity">
28
+ <el-option
29
+ v-for="item in formTypeCityOptions"
30
+ :key="item.id"
31
+ :label="item.dataName"
32
+ :value="item.id"
33
+ >
34
+ </el-option>
35
+ </el-select>-
36
+ <el-select v-model="crud.searchForm.area" style="width: 150px" @change="formTypeChangeArea" >
37
+ <el-option
38
+ v-for="item in formTypeAreaOptions"
39
+ :key="item.id"
40
+ :label="item.dataName"
41
+ :value="item.id"
42
+ >
43
+ </el-option>
44
+ </el-select>-
45
+ <el-select v-model="crud.searchForm.street" style="width: 150px" >
46
+ <el-option
47
+ v-for="item in formTypeStreetOptions"
48
+ :key="item.id"
49
+ :label="item.dataName"
50
+ :value="item.id">
51
+ </el-option>
52
+ </el-select>
53
+ </el-form-item>
54
+
55
+
56
+ <el-form-item>
57
+ <el-button type="primary" icon="el-icon-search" @click="crud.doSearch()">查询</el-button>
58
+ <el-button icon="el-icon-close" @click="crud.resetSearch()">清空</el-button>
59
+ </el-form-item>
60
+
61
+
62
+ </el-form>
63
+ </div>
64
+ </el-header>
65
+
66
+ <!--查询体 列表展示-->
67
+ <el-main id="tableMain" style="height: 100%">
68
+ <el-container style="height:100%" class="table-list-container">
69
+ <!--列表-->
70
+ <el-main style="height: 100%;" ref="tableMain" >
71
+ <el-table :data="crud.dataStore.records" :ref="crud.tableRef" stripe border height="100%" style="width: 100%;">
72
+ <el-table-column type="index" label=" " align="center" width="60"></el-table-column>
73
+ <el-table-column label="单位及部门" prop="orgName" align="center"></el-table-column>
74
+ <el-table-column label="账号" prop="userAccount" align="center" width="200" ></el-table-column>
75
+ <el-table-column label="姓名" prop="userName" align="center" width="180" >
76
+ </el-table-column>
77
+ <el-table-column label="登录时间" prop="loginTime" :formatter="viewDateFormat" align="center" width="180" >
78
+ </el-table-column>
79
+ <el-table-column label="时长" prop="totalTime" align="center" width="180" >
80
+ </el-table-column>
81
+ <el-table-column label="登录IP" prop="clientIp" align="center" width="180" >
82
+ </el-table-column>
83
+
84
+ </el-table>
85
+ </el-main>
86
+ </el-container>
87
+ </el-main>
88
+
89
+ <!--底部分页-->
90
+ <el-footer>
91
+ <el-pagination
92
+ :ref="crud.pageRef"
93
+ :page-sizes="crud.pageSizes"
94
+ :page-size="crud.pageSize"
95
+ :current-page="crud.page"
96
+ :total="crud.dataStore.total"
97
+ @size-change="crud.sizeChange()"
98
+ @current-change="crud.currentPage()"
99
+ layout="total, sizes, prev, pager, next, jumper">
100
+ </el-pagination>
101
+ </el-footer>
102
+
103
+
104
+ </el-container>
105
+ </template>
106
+
107
+ <script>
108
+
109
+
110
+ export default {
111
+ //接收传过来的数据
112
+ name:"log-manage-gov",
113
+ show:true,
114
+ data() {
115
+ return {
116
+ releaseStatus:'1', //发布状态
117
+ releaseStatusDefault:'0',
118
+ conditionMap:{},
119
+ crud : new this.CrudUtil({
120
+ vue: this,
121
+ entityName:"loginLog",
122
+ url:"loginLogController",
123
+ noClearSearchColumns:["userType","sort","order"],
124
+ initNoSearch:true
125
+ }),
126
+ formInline: {
127
+ user: '',
128
+ region: ''
129
+ },
130
+ formTypeCityOptions:[],
131
+ formTypeAreaOptions:[],
132
+ formTypeStreetOptions:[],
133
+ formData:{
134
+ id:"", 'orgName':"",'userAccount':"",'userName':"",'loginTime':"",'totalTime':"", 'clientIp':""
135
+ }, //弹出框初始值
136
+
137
+
138
+ }
139
+ },
140
+
141
+
142
+ created(){
143
+ let vm = this;
144
+ this.initData();
145
+
146
+ },
147
+ watch: {
148
+ 'crud.searchForm.city'(){
149
+ this.$set(this.crud.searchForm,"area","");
150
+ },
151
+ 'crud.searchForm.area'(){
152
+ this.$set(this.crud.formData,"street","");
153
+ }
154
+ },
155
+ methods: {
156
+ //当城市变化时 获取地区
157
+ formTypeChangeCity(){
158
+ let vm = this;
159
+ vm.formTypeAreaOptions = []; //重新置空
160
+ let {city} = vm.crud.searchForm;
161
+ vm.axios.post(vm.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
162
+ "parentId":city}).then(function (ret) {
163
+ vm.formTypeAreaOptions = ret.data;
164
+ });
165
+ },
166
+ //当地区发生变化时候,查询街道
167
+ formTypeChangeArea(){
168
+ let vm = this;
169
+ vm.formTypeStreetOptions = []; //重新置空
170
+ let {area} = vm.crud.searchForm;
171
+ vm.axios.post(vm.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
172
+ "parentId":area}).then(function (ret) {
173
+ vm.formTypeStreetOptions = ret.data;
174
+ });
175
+ },
176
+
177
+ //初始化数据加载
178
+ initData(){
179
+ let vm = this;
180
+ let urlParam = window.location.href; //从URL中获取日志类型
181
+ let userType = urlParam.slice(urlParam.indexOf('=')+1,urlParam.length); //获取类型
182
+
183
+ //初始化下拉菜单地区
184
+ //下拉框数据
185
+ //地区查询 typeId="522eb83216004493b0e0eb729c564941"
186
+ vm.axios.post(vm.api.data.getDataByType, {"typeId":"522eb83216004493b0e0eb729c564941",
187
+ "parentId":"57c615c7031c4759be0cc166340d1bed"}).then(function (ret) {
188
+ vm.formTypeCityOptions = ret.data;
189
+ });
190
+
191
+ console.log("当前请求的url",userType);
192
+ //查询当前系统用户id
193
+ vm.crud.searchForm = {"userType":userType,"sort":"l","order":"1"}; //传入查询条件
194
+ vm.crud.search(); //出发查询条件
195
+ },
196
+
197
+ //重置查询条件
198
+ resetSearch() {
199
+ let vm = this;
200
+ let crud = vm.crud;
201
+ let objData = {};
202
+ let searchForm = crud.searchForm;
203
+ crud.noClearSearchColumns && crud.noClearSearchColumns.forEach(function (key) {
204
+ objData[key] = searchForm[key];
205
+ });
206
+ objData["page"] = "1";
207
+ crud.searchForm = Object.assign({}, objData);
208
+ crud.search(vm.checkSelectedMsg);
209
+ },
210
+
211
+
212
+ //日期格式化
213
+ viewDateFormat(value, time) {
214
+ let d = new Date(value.createTime);
215
+ let fmt = "yyyy-MM-dd HH:mm:ss";
216
+ if (d) {
217
+ let date = new Date(d);
218
+ let o = {
219
+ "M+": date.getMonth() + 1, //月份
220
+ "d+": date.getDate(), //日
221
+ "H+": date.getHours(), //小时
222
+ "m+": date.getMinutes(), //分
223
+ "s+": date.getSeconds(), //秒
224
+ "q+": Math.floor((date.getMonth() + 3) / 3), //季度
225
+ "S": date.getMilliseconds() //毫秒
226
+ };
227
+ if (/(y+)/.test(fmt))
228
+ fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
229
+ for (let k in o)
230
+ if (new RegExp("(" + k + ")").test(fmt))
231
+ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
232
+ } else {
233
+ fmt = '无';
234
+ }
235
+ return fmt;
236
+ }
237
+
238
+ }
239
+ }
240
+
241
+ </script>
242
+
243
+ <style scoped>
244
+ legend{
245
+ font-size: 14px;
246
+ }
247
+ .button_header{
248
+ position: absolute;
249
+ height: 60px!important;
250
+ text-align: center;
251
+ line-height: 60px;
252
+ bottom: 0;
253
+ border-top: 1px solid #f2f2f2;
254
+ background-color: white;
255
+ margin: auto;
256
+ width: 100%;
257
+ right: 0;
258
+ z-index: 99;
259
+ }
260
+ .control_box{
261
+ padding-right: 100px;
262
+ position: relative;
263
+ }
264
+ .control_box_zero{
265
+ padding-right: 0;
266
+ position: relative;
267
+ }
268
+ .operate_div{
269
+ position: absolute;
270
+ right: 0;
271
+ top: 0;
272
+ bottom: 0;
273
+ margin: auto;
274
+ width: 100px;
275
+ }
276
+ .operate_div i{
277
+ /*margin-right: 20px;*/
278
+ cursor: pointer;
279
+ width: 30px;
280
+ height: 30px;
281
+ padding-top: 15px;
282
+ padding-left: 15px;
283
+ float: left;
284
+ }
285
+ .top_contain{
286
+ height: 100%;
287
+ /*border-radius:8px;*/
288
+ overflow-y: hidden;
289
+
290
+
291
+ }
292
+ .top_contain::-webkit-scrollbar{
293
+ width: 0;
294
+ }
295
+ </style>
296
+ <style>
297
+ .black .el-form-item__label{
298
+ color: black;
299
+ }
300
+ .green .el-form-item__label{
301
+ color: #27B5C3;
302
+ }
303
+ .settingClass{
304
+ width: 100%;
305
+ height: 40px;
306
+ position: relative;
307
+ }
308
+ .settingClass span{
309
+ position: absolute;
310
+ top:0;left:0;
311
+ right: 0;bottom: 0;
312
+ margin: auto;line-height: 40px;
313
+ }
314
+ .receiveObjNameLeft{
315
+ float: left;
316
+ width: 90%;
317
+ }
318
+ .receiveObjNameRight{
319
+ position: absolute;
320
+ float: right;
321
+ width: 10%;
322
+ top: 5px;
323
+ margin-left: 4px;
324
+ button:5px;
325
+
326
+ }
327
+
328
+ </style>