safecheck-client 4.0.2-65 → 4.0.2-67
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/.babelrc +5 -5
- package/.editorconfig +9 -9
- package/android.html +18 -18
- package/config/dev.env.js +6 -6
- package/config/index.js +38 -38
- package/config/prod.env.js +3 -3
- package/config/test.env.js +6 -6
- package/docs/AppBase.md +22 -22
- package/docs/Busy.md +14 -14
- package/docs/CriteriaPaged.md +47 -47
- package/docs/DataGrid.md +54 -54
- package/docs/DataModel.md +22 -22
- package/docs/Dynamic.md +42 -42
- package/docs/GetParams.md +11 -11
- package/docs/HttpBusy.md +13 -13
- package/docs/HttpStore.md +29 -29
- package/docs/MessageBox.md +28 -28
- package/docs/PagedList.md +29 -29
- package/docs/Pager.md +21 -21
- package/docs/Project.md +23 -23
- package/docs/Route.md +105 -105
- package/docs/SafetyCheck/AdjustPlan.md +13 -13
- package/docs/SafetyCheck/CheckerPlan.md +12 -12
- package/docs/Task.md +46 -46
- package/docs/TreeList.md +28 -28
- package/docs/TreeMixin.md +18 -18
- package/docs/all.md +10 -10
- package/docs/list.md +42 -42
- package/docs/partial.md +75 -75
- package/docs/selector.md +82 -82
- package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
- package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
- package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
- package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
- package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
- package/examples/AddressList/App.vue +13 -13
- package/examples/AddressList/index.html +11 -11
- package/examples/DispatchList/App.vue +10 -10
- package/examples/DispatchList/BaseTree.vue +13 -13
- package/examples/DispatchList/Init.vue +22 -22
- package/examples/DispatchList/Test.vue +20 -20
- package/examples/DispatchList/index.html +11 -11
- package/examples/DispatchList/main.js +18 -18
- package/home.html +16 -16
- package/package.json +1 -1
- package/publish.bat +7 -7
- package/release.bat +5 -5
- package/src/Widget.vue +13 -13
- package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
- package/src/android-bootstrap/less/.csscomb.json +304 -304
- package/src/android-bootstrap/less/.csslintrc +19 -19
- package/src/android-bootstrap/less/alerts.less +73 -73
- package/src/android-bootstrap/less/badges.less +66 -66
- package/src/android-bootstrap/less/bootstrap.less +56 -56
- package/src/android-bootstrap/less/breadcrumbs.less +26 -26
- package/src/android-bootstrap/less/button-groups.less +247 -247
- package/src/android-bootstrap/less/buttons.less +173 -173
- package/src/android-bootstrap/less/carousel.less +269 -269
- package/src/android-bootstrap/less/close.less +34 -34
- package/src/android-bootstrap/less/code.less +69 -69
- package/src/android-bootstrap/less/component-animations.less +33 -33
- package/src/android-bootstrap/less/grid.less +84 -84
- package/src/android-bootstrap/less/input-groups.less +167 -167
- package/src/android-bootstrap/less/jumbotron.less +52 -52
- package/src/android-bootstrap/less/labels.less +64 -64
- package/src/android-bootstrap/less/list-group.less +141 -141
- package/src/android-bootstrap/less/media.less +66 -66
- package/src/android-bootstrap/less/mixins/alerts.less +14 -14
- package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
- package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
- package/src/android-bootstrap/less/mixins/buttons.less +69 -69
- package/src/android-bootstrap/less/mixins/center-block.less +7 -7
- package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
- package/src/android-bootstrap/less/mixins/forms.less +90 -90
- package/src/android-bootstrap/less/mixins/gradients.less +59 -59
- package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
- package/src/android-bootstrap/less/mixins/grid.less +122 -122
- package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
- package/src/android-bootstrap/less/mixins/image.less +33 -33
- package/src/android-bootstrap/less/mixins/labels.less +12 -12
- package/src/android-bootstrap/less/mixins/list-group.less +30 -30
- package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
- package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
- package/src/android-bootstrap/less/mixins/opacity.less +8 -8
- package/src/android-bootstrap/less/mixins/pagination.less +24 -24
- package/src/android-bootstrap/less/mixins/panels.less +24 -24
- package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
- package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
- package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
- package/src/android-bootstrap/less/mixins/resize.less +6 -6
- package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
- package/src/android-bootstrap/less/mixins/size.less +10 -10
- package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
- package/src/android-bootstrap/less/mixins/table-row.less +44 -44
- package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
- package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
- package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
- package/src/android-bootstrap/less/mixins.less +40 -40
- package/src/android-bootstrap/less/modals.less +151 -151
- package/src/android-bootstrap/less/navbar.less +660 -660
- package/src/android-bootstrap/less/navs.less +290 -290
- package/src/android-bootstrap/less/normalize.less +424 -424
- package/src/android-bootstrap/less/pager.less +76 -76
- package/src/android-bootstrap/less/pagination.less +89 -89
- package/src/android-bootstrap/less/panels.less +274 -274
- package/src/android-bootstrap/less/popovers.less +131 -131
- package/src/android-bootstrap/less/print.less +101 -101
- package/src/android-bootstrap/less/progress-bars.less +87 -87
- package/src/android-bootstrap/less/responsive-embed.less +35 -35
- package/src/android-bootstrap/less/responsive-utilities.less +194 -194
- package/src/android-bootstrap/less/scaffolding.less +161 -161
- package/src/android-bootstrap/less/tables.less +262 -262
- package/src/android-bootstrap/less/theme.less +291 -291
- package/src/android-bootstrap/less/thumbnails.less +36 -36
- package/src/android-bootstrap/less/tooltip.less +102 -102
- package/src/android-bootstrap/less/type.less +303 -303
- package/src/android-bootstrap/less/utilities.less +55 -55
- package/src/android-bootstrap/less/variables.less +896 -896
- package/src/android-bootstrap/less/wells.less +29 -29
- package/src/bootstrap/less/.csscomb.json +304 -304
- package/src/bootstrap/less/.csslintrc +19 -19
- package/src/bootstrap/less/alerts.less +73 -73
- package/src/bootstrap/less/badges.less +66 -66
- package/src/bootstrap/less/breadcrumbs.less +26 -26
- package/src/bootstrap/less/button-groups.less +247 -247
- package/src/bootstrap/less/buttons.less +172 -172
- package/src/bootstrap/less/carousel.less +269 -269
- package/src/bootstrap/less/close.less +34 -34
- package/src/bootstrap/less/code.less +69 -69
- package/src/bootstrap/less/component-animations.less +33 -33
- package/src/bootstrap/less/dropdowns.less +216 -216
- package/src/bootstrap/less/grid.less +84 -84
- package/src/bootstrap/less/input-groups.less +167 -167
- package/src/bootstrap/less/jumbotron.less +52 -52
- package/src/bootstrap/less/labels.less +64 -64
- package/src/bootstrap/less/list-group.less +141 -141
- package/src/bootstrap/less/media.less +66 -66
- package/src/bootstrap/less/mixins/alerts.less +14 -14
- package/src/bootstrap/less/mixins/background-variant.less +9 -9
- package/src/bootstrap/less/mixins/border-radius.less +18 -18
- package/src/bootstrap/less/mixins/buttons.less +69 -69
- package/src/bootstrap/less/mixins/center-block.less +7 -7
- package/src/bootstrap/less/mixins/clearfix.less +22 -22
- package/src/bootstrap/less/mixins/forms.less +90 -90
- package/src/bootstrap/less/mixins/gradients.less +59 -59
- package/src/bootstrap/less/mixins/grid-framework.less +92 -92
- package/src/bootstrap/less/mixins/grid.less +122 -122
- package/src/bootstrap/less/mixins/hide-text.less +21 -21
- package/src/bootstrap/less/mixins/image.less +33 -33
- package/src/bootstrap/less/mixins/labels.less +12 -12
- package/src/bootstrap/less/mixins/list-group.less +30 -30
- package/src/bootstrap/less/mixins/nav-divider.less +10 -10
- package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
- package/src/bootstrap/less/mixins/opacity.less +8 -8
- package/src/bootstrap/less/mixins/pagination.less +24 -24
- package/src/bootstrap/less/mixins/panels.less +24 -24
- package/src/bootstrap/less/mixins/progress-bar.less +10 -10
- package/src/bootstrap/less/mixins/reset-filter.less +8 -8
- package/src/bootstrap/less/mixins/reset-text.less +18 -18
- package/src/bootstrap/less/mixins/resize.less +6 -6
- package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
- package/src/bootstrap/less/mixins/size.less +10 -10
- package/src/bootstrap/less/mixins/tab-focus.less +9 -9
- package/src/bootstrap/less/mixins/table-row.less +44 -44
- package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
- package/src/bootstrap/less/mixins/text-overflow.less +8 -8
- package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
- package/src/bootstrap/less/mixins.less +40 -40
- package/src/bootstrap/less/modals.less +151 -151
- package/src/bootstrap/less/navbar.less +660 -660
- package/src/bootstrap/less/normalize.less +424 -424
- package/src/bootstrap/less/pagination.less +89 -89
- package/src/bootstrap/less/panels.less +275 -275
- package/src/bootstrap/less/popovers.less +131 -131
- package/src/bootstrap/less/print.less +101 -101
- package/src/bootstrap/less/progress-bars.less +87 -87
- package/src/bootstrap/less/responsive-embed.less +35 -35
- package/src/bootstrap/less/responsive-utilities.less +194 -194
- package/src/bootstrap/less/scaffolding.less +161 -161
- package/src/bootstrap/less/theme.less +291 -291
- package/src/bootstrap/less/thumbnails.less +36 -36
- package/src/bootstrap/less/tooltip.less +102 -102
- package/src/bootstrap/less/type.less +303 -303
- package/src/bootstrap/less/utilities.less +55 -55
- package/src/bootstrap/less/wells.less +29 -29
- package/src/components/FileUpload.vue +696 -696
- package/src/components/Hello.vue +39 -39
- package/src/components/LeftTree.vue +27 -27
- package/src/components/android/AttendanceTally.vue +116 -116
- package/src/components/android/Blank.vue +10 -10
- package/src/components/android/CheckUnplanPage.vue +56 -56
- package/src/components/android/Checker.vue +12 -12
- package/src/components/android/CheckerAnnual.vue +81 -81
- package/src/components/android/CheckerAvarta.vue +82 -82
- package/src/components/android/EquipmentInspection.vue +348 -348
- package/src/components/android/FootprintMap.vue +120 -120
- package/src/components/android/HiddentroubleInvestigation.vue +192 -192
- package/src/components/android/MasterMain.vue +77 -77
- package/src/components/android/Menu.vue +132 -132
- package/src/components/android/PaperAlarm.vue +85 -85
- package/src/components/android/PaperDeviceNoncivil.vue +214 -214
- package/src/components/android/PlumberAnnual.vue +83 -83
- package/src/components/android/PlumberAnnualDetail.vue +65 -65
- package/src/components/android/PlumberMonthly.vue +84 -84
- package/src/components/android/PostMap.vue +83 -83
- package/src/components/android/QueryCheckHistory.vue +122 -122
- package/src/components/android/QueryCheckHistoryItem.vue +62 -62
- package/src/components/android/RepairMain.vue +60 -60
- package/src/components/android/Repairman.vue +12 -12
- package/src/components/android/StationMaster.vue +12 -12
- package/src/components/defects/DefectModal.vue +101 -101
- package/src/components/defects/DevicesAndItem.vue +39 -39
- package/src/components/issueplan/IssuePlanMain.vue +23 -23
- package/src/components/notice/NoticeForm.vue +100 -100
- package/src/components/notice/NoticeIssue.vue +20 -20
- package/src/components/paper/PicViewer.vue +18 -18
- package/src/components/phonestate/MonthlyTraffic.vue +66 -66
- package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
- package/src/components/phonestate/PostMap.vue +82 -82
- package/src/components/querycheckpaper/PaperItem.vue +59 -59
- package/src/components/report/CheckPlanUserList.vue +226 -216
- package/src/components/userfile/MeterFile.vue +145 -145
- package/src/components/userfile/MeterModify.vue +46 -46
- package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
- package/src/filiale/jinhong/pc/CheckSearchUser.vue +3 -0
- package/src/filiale/jinhong/pc/PaperList.vue +3 -0
- package/src/filiale/jinhong/pc/PlanManage.vue +933 -933
- package/src/filiale/meihekou/android/SafecheckOrderV.vue +62 -45
- package/src/filiale/meihekou/pc/NewCheckpaper.vue +247 -279
- package/src/filiale/meihekou/pc/PaperList.vue +9 -23
- package/src/filiale/meihekou/pc/checkUserList.vue +790 -0
- package/src/filiale/meihekou/pc.js +1 -0
- package/src/plugins/LoadData.js +10 -10
- package/src/plugins/LoadParams.js +24 -24
- package/src/stores/wxconfig.js +10 -10
- package/src/utils/getNowDate.js +33 -33
- package/test/e2e/custom-assertions/elementCount.js +26 -26
- package/test/e2e/nightwatch.conf.js +40 -40
- package/test/e2e/runner.js +30 -30
- package/test/e2e/specs/test.js +13 -13
- package/test/unit/.eslintrc +5 -5
- package/test/unit/TestUtil.js +62 -62
- package/test/unit/context.html +20 -20
- package/test/unit/index.js +13 -13
|
@@ -240,36 +240,36 @@ export default {
|
|
|
240
240
|
repairTypeOptions:this.$appdata.getParam('报修类型'),
|
|
241
241
|
f_security_check_type_id: '',
|
|
242
242
|
config: [
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
243
|
+
{
|
|
244
|
+
"itemname": "燃气表",
|
|
245
|
+
"checkmust": true,
|
|
246
|
+
"index": 1,
|
|
247
|
+
"items": [
|
|
248
|
+
{"itemname": "基表编号", "index": 1, "type": "string", "readonly": true},
|
|
249
|
+
{"itemname": "气表型号", "index": 2, "type": "string", "readonly": true},
|
|
250
|
+
{"itemname": "气表品牌", "index": 3, "type": "string", "readonly": true},
|
|
251
|
+
{"itemname": "表向", "index": 4, "type": "string", "readonly": true},
|
|
252
|
+
{"itemname": "初始表底", "index": 5, "type": "number", "readonly": true},
|
|
253
|
+
{"itemname": "上期表读数", "index": 6, "type": "number", "readonly": true},
|
|
254
254
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
255
|
+
{"itemname": "累购气量", "index": 7, "type": "number", "readonly": true,unique: true,collectionType:"按气量"},
|
|
256
|
+
{"itemname": "已用气量", "index": 8, "type": "number", "checkmust": false,unique: true,collectionType:"按气量"},
|
|
257
|
+
{"itemname": "剩余气量", "index": 9, "type": "number", "checkmust": false,unique: true,collectionType:"按气量"},
|
|
258
|
+
{"itemname": "气量异常差值", "index": 10, "type": "number", "readonly": true,unique: true,collectionType:"按气量"},
|
|
259
259
|
|
|
260
260
|
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
261
|
+
{"itemname": "累购金额", "index": 7, "type": "number", "readonly": true,unique: true,collectionType:"按金额"},
|
|
262
|
+
{"itemname": "已用金额", "index": 8, "type": "number", "checkmust": false,unique: true,collectionType:"按金额"},
|
|
263
|
+
{"itemname": "剩余金额", "index": 9, "type": "number", "checkmust": false,unique: true,collectionType:"按金额"},
|
|
264
|
+
{"itemname": "金额异常差值", "index": 10, "type": "number", "readonly": true,unique: true,collectionType:"按金额"},
|
|
265
265
|
|
|
266
|
-
|
|
266
|
+
{"itemname": "系统余额", "index": 10, "type": "number", "readonly": true},
|
|
267
267
|
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
268
|
+
{"itemname": "表封号", "index": 11, "type": "string", "readonly": true},
|
|
269
|
+
{"itemname": "燃气表照片", "index": 12, "type": "picture", "checkmust": false}
|
|
270
|
+
]
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
273
|
// 维修项
|
|
274
274
|
isneedDate:'',
|
|
275
275
|
days: this.$appdata.getParam('截止天数'),
|
|
@@ -862,6 +862,23 @@ export default {
|
|
|
862
862
|
f_is_defect = configItems.options[k].isdefect
|
|
863
863
|
f_item_value = items.f_item_value[i]
|
|
864
864
|
f_defect_level = configItems.level
|
|
865
|
+
let items_list = {
|
|
866
|
+
f_is_defect: f_is_defect,
|
|
867
|
+
f_item_value: f_item_value,
|
|
868
|
+
f_defect_level: f_defect_level,
|
|
869
|
+
f_is_eliminate: null,
|
|
870
|
+
f_create_time: Util.toStandardTimeString()
|
|
871
|
+
}
|
|
872
|
+
if (!items.f_item_lists) {
|
|
873
|
+
items.f_item_lists = []
|
|
874
|
+
if (JSON.stringify(items_list) !== '{}') {
|
|
875
|
+
items.f_item_lists.push(items_list)
|
|
876
|
+
}
|
|
877
|
+
} else {
|
|
878
|
+
if (JSON.stringify(items_list) !== '{}') {
|
|
879
|
+
items.f_item_lists.push(items_list)
|
|
880
|
+
}
|
|
881
|
+
}
|
|
865
882
|
if (f_is_defect) {
|
|
866
883
|
if (checkResults.result !== '有隐患') {
|
|
867
884
|
checkResults.result = '有隐患'
|
|
@@ -1011,7 +1028,7 @@ export default {
|
|
|
1011
1028
|
save(type) {
|
|
1012
1029
|
if (type == 'temp' || type == 'finish') {
|
|
1013
1030
|
this.assemblyCodata()
|
|
1014
|
-
|
|
1031
|
+
}
|
|
1015
1032
|
//禁用事件
|
|
1016
1033
|
this.saveNoclick()
|
|
1017
1034
|
if (type == 'temp') {
|
|
@@ -1390,7 +1407,7 @@ export default {
|
|
|
1390
1407
|
param = res.data[0]
|
|
1391
1408
|
param.f_new_tablebase = _this.data.f_new_tablebase
|
|
1392
1409
|
param.tabname="在线抄表",
|
|
1393
|
-
|
|
1410
|
+
param.f_result_state="安检回量"
|
|
1394
1411
|
var pardate = {
|
|
1395
1412
|
_this:this,
|
|
1396
1413
|
tittle:'抄表单信息',
|
|
@@ -1576,18 +1593,18 @@ export default {
|
|
|
1576
1593
|
}
|
|
1577
1594
|
try {
|
|
1578
1595
|
if (this.item.f_security_check_type_id && this.item.f_security_check_type_id != null) {
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1596
|
+
await this.getSecurityCheckType(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/getSecurityCheckTypeHistoryById`, {id: this.item.f_security_check_type_id})
|
|
1597
|
+
this.f_security_check_type_id = this.serverConfig.data.id
|
|
1598
|
+
this.config = this.extend(JSON.parse(this.serverConfig.data.f_json), this.config)
|
|
1599
|
+
this.initConfig()
|
|
1583
1600
|
} else {
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1601
|
+
await this.getSecurityCheckType(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/getSecurityCheckTypeByType`, {
|
|
1602
|
+
f_safecheck_type: this.item.f_safecheck_type || '年度普检',
|
|
1603
|
+
f_user_type: this.item.f_user_type
|
|
1604
|
+
})
|
|
1605
|
+
this.f_security_check_type_id = this.serverConfig.data[0].id
|
|
1606
|
+
this.config = this.extend(JSON.parse(this.serverConfig.data[0].f_json), this.config)
|
|
1607
|
+
this.initConfig()
|
|
1591
1608
|
}
|
|
1592
1609
|
}catch (e) {
|
|
1593
1610
|
this.config = this.extend(JSON.parse(Vue.newConfig.data[0].f_json), this.config)
|
|
@@ -2171,7 +2188,7 @@ export default {
|
|
|
2171
2188
|
if (typeof item.f_items[i] == 'function') {
|
|
2172
2189
|
continue
|
|
2173
2190
|
}
|
|
2174
|
-
|
|
2191
|
+
let items = this.config.find(obj => obj.itemname === item.f_device_type).items;
|
|
2175
2192
|
for (let de in items) {
|
|
2176
2193
|
if (typeof items[de] == 'function') {
|
|
2177
2194
|
continue
|
|
@@ -2213,15 +2230,15 @@ export default {
|
|
|
2213
2230
|
this.init()
|
|
2214
2231
|
}
|
|
2215
2232
|
if(this.parentPage && this.parentPage=='CurrentCreate'){
|
|
2216
|
-
|
|
2217
|
-
|
|
2218
|
-
|
|
2233
|
+
let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
|
|
2234
|
+
if (isRecodr) {
|
|
2235
|
+
if (isRecodr == 'true') {
|
|
2219
2236
|
this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
|
|
2220
|
-
|
|
2221
|
-
|
|
2237
|
+
// 初始化录音
|
|
2238
|
+
let resse = this.record()
|
|
2239
|
+
}
|
|
2222
2240
|
}
|
|
2223
2241
|
}
|
|
2224
|
-
}
|
|
2225
2242
|
this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
|
|
2226
2243
|
} else {
|
|
2227
2244
|
let that = this
|