sale-client 3.4.189 → 3.4.190
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/.gradle/{4.4/fileChanges → 3.5.1/file-changes}/last-build.bin +0 -0
- package/.gradle/3.5.1/taskHistory/taskHistory.lock +0 -0
- package/{npm → .gradle/buildOutputCleanup/built.bin} +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +2 -0
- package/.gradle/buildOutputCleanup/cache.properties.lock +1 -0
- package/build/dev-server.js +2 -2
- package/package.json +1 -1
- package/src/components/FilesManage/FileUserPhone.vue +93 -0
- package/src/components/FilesManage/TemplateManage.vue +167 -167
- package/src/components/FilesManage/UserEssentialInfoTest.vue +329 -320
- package/src/components/FilesManage/UserGeneralInfoTest.vue +7 -3
- package/src/components/FilesManageNew/FileUserFiles.vue +743 -743
- package/src/components/charge/business/FilesComplete.vue +253 -253
- package/src/components/charge/business/PriceChangeCompensation/JbCompensation.vue +342 -342
- package/src/components/charge/business/machine/MachineMeterCenter.vue +728 -728
- package/src/components/charge/business/refund/RefundManage.vue +28 -28
- package/src/components/chargeNew/thirdSurplus.vue +309 -309
- package/src/components/revenue/Common/MeterMessage.vue +184 -184
- package/src/components/revenue/HandManager/HandManagerCard.vue +1163 -1163
- package/src/components/revenue/base/leftview/MixPriceInfo.vue +60 -60
- package/src/components/revenue/base/leftview/Stairinfo.vue +156 -156
- package/src/components/revenue/comprehen/ComprehenOperation/BankPayment/BankPayment.vue +23 -24
- package/src/components/revenue/comprehen/Maintenance/revenue/MeterOperatemain.vue +392 -392
- package/src/components/revenue/comprehen/Message/MessageManage.vue +136 -136
- package/src/components/revenue/comprehen/StairPrice/GasPrice.vue +514 -514
- package/src/components/revenue/comprehen/replacement/replacementHandInfoRecord.vue +155 -155
- package/src/components/revenue/comprehen/wechatpay/WeChat.vue +62 -62
- package/src/components/revenue/machineHandManage/machineDown.vue +1112 -1112
- package/src/components/revenue/machineHandManage/machineHandManager.vue +78 -78
- package/src/filiale/alashan/PrintBill.vue +116 -116
- package/src/filiale/macheng/FilesManageNew/UserEssentialInfoTest.vue +373 -373
- package/src/filiale/macheng/MessageList.vue +420 -420
- package/src/filiale/macheng/UserDeviceInfoTest.vue +412 -412
- package/src/filiale/meihekou/PrintBill.vue +140 -140
- package/src/filiale/meihekou/ReissueBill.vue +322 -322
- package/src/filiale/qianneng/GasPriceList.vue +330 -330
- package/src/filiale/qianneng/HandManager.vue +1838 -1838
- package/src/filiale/qingtongxia/CardMeterCenter.vue +743 -743
- package/src/filiale/qingtongxia/UserGeneralInfoTest.vue +538 -538
- package/src/filiale/rongcheng/FilesManageNew/UserGeneralInfoTest.vue +608 -608
- package/src/filiale/rongchuang/MeterinfoTest.vue +411 -422
- package/src/filiale/rongchuang/OtherGas.vue +329 -329
- package/src/filiale/shaoguan/Message/MessageList.vue +2 -2
- package/src/filiale/tongchuan/CardList.vue +482 -482
- package/src/filiale/tongchuan/UserEssentialInfoTest.vue +10 -1
- package/src/filiale/tongchuan/UserGeneralInfoTest.vue +8 -4
- package/src/filiale/tongchuan/feeDeduction.vue +168 -168
- package/src/filiale/tongchuan/plugins/FileManageService.js +31 -0
- package/src/filiale/xinkang/base/leftview/Userinfo.vue +176 -176
- package/src/filiale/xinkang/sale.js +8 -8
- package/src/filiale/zhongsheng/wechatpay/WeChatPayDetail.vue +469 -469
- package/src/plugins/FileManageService.js +22 -0
- package/src/sale.js +2 -0
- package/.gradle/4.4/fileHashes/fileHashes.bin +0 -0
- package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
package/.babelrc
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
{
|
|
2
|
-
"presets": ["es2015", "stage-2"],
|
|
3
|
-
"plugins": ["transform-runtime"],
|
|
4
|
-
"comments": false
|
|
5
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"presets": ["es2015", "stage-2"],
|
|
3
|
+
"plugins": ["transform-runtime"],
|
|
4
|
+
"comments": false
|
|
5
|
+
}
|
|
File without changes
|
|
Binary file
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
package/build/dev-server.js
CHANGED
|
@@ -12,7 +12,7 @@ var compiler = webpack(config)
|
|
|
12
12
|
// https://github.com/chimurai/http-proxy-middleware
|
|
13
13
|
var bendi = 'http://121.36.106.17:8400/',bendi1 = 'http://121.36.106.17:8400/'
|
|
14
14
|
// 公司测试服务
|
|
15
|
-
var fuwu = 'http://
|
|
15
|
+
var fuwu = 'http://121.36.106.17:8400/'
|
|
16
16
|
//铜川正式
|
|
17
17
|
// var fuwu = 'http://61.134.55.234:9999/'
|
|
18
18
|
//铜川测试
|
|
@@ -98,7 +98,7 @@ var proxyTable = {
|
|
|
98
98
|
},
|
|
99
99
|
'/rs': {
|
|
100
100
|
// target: 'http://192.168.30.63:8081/'
|
|
101
|
-
target: 'http://
|
|
101
|
+
target: 'http://121.36.106.17:8400/'
|
|
102
102
|
// target:fuwu
|
|
103
103
|
}
|
|
104
104
|
}
|
package/package.json
CHANGED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<modal width="30%" :show.sync="show" v-ref:modal title="备用电话管理" large backdrop="false" class="">
|
|
4
|
+
<article slot="modal-body" class="modal-body">
|
|
5
|
+
<div class="text-center">
|
|
6
|
+
<div v-for="row in userphonelist">
|
|
7
|
+
<validator name='v'>
|
|
8
|
+
<form class="form-horizontal select-overspread">
|
|
9
|
+
<div class="row" v-if="row.f_state==='有效'">
|
|
10
|
+
<div class="col-sm-10 form-group">
|
|
11
|
+
<label for="f_rent_phone" class="font_normal_body">     备用电话  </label>
|
|
12
|
+
<input class="input_search"
|
|
13
|
+
style="width:50%"
|
|
14
|
+
type="text"
|
|
15
|
+
v-model="row.f_rent_phone"
|
|
16
|
+
:value.sync="row.f_rent_phone"
|
|
17
|
+
placeholder="备用电话">
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-2 form-group">
|
|
20
|
+
<button type="button" class="glyphicon glyphicon-minus btn-danger" @click.stop="delphone($index,row)"></button>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
</form>
|
|
24
|
+
</validator>
|
|
25
|
+
</div>
|
|
26
|
+
<div class="panel panel-default auto text-center" @click="addphone()" style="cursor: pointer;">
|
|
27
|
+
<span class="glyphicon glyphicon-plus"></span>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</article>
|
|
31
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
32
|
+
<button type="button" class="btn btn-success" @click='close()'>确认</button>
|
|
33
|
+
</footer>
|
|
34
|
+
</modal>
|
|
35
|
+
</div>
|
|
36
|
+
</template>
|
|
37
|
+
<script>
|
|
38
|
+
import Vue from 'vue'
|
|
39
|
+
export default {
|
|
40
|
+
title: '备用电话管理',
|
|
41
|
+
data () {
|
|
42
|
+
return {
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
props: {
|
|
46
|
+
userphonelist: {
|
|
47
|
+
type: Array
|
|
48
|
+
},
|
|
49
|
+
show: {
|
|
50
|
+
type: Boolean,
|
|
51
|
+
default: false
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
ready () {
|
|
55
|
+
console.log('备用电话管理:',JSON.stringify(this.userphonelist))
|
|
56
|
+
},
|
|
57
|
+
methods: {
|
|
58
|
+
addphone () {
|
|
59
|
+
this.userphonelist.push({
|
|
60
|
+
f_userinfo_id: this.f_userinfo_id?this.f_userinfo_id:'',
|
|
61
|
+
f_rent_phone:'',
|
|
62
|
+
f_state: '有效',
|
|
63
|
+
f_operator: Vue.$login.f.name,
|
|
64
|
+
f_operatorid: Vue.$login.f.id,
|
|
65
|
+
f_orgid: Vue.$login.f.orgid,
|
|
66
|
+
f_orgname: Vue.$login.f.orgs,
|
|
67
|
+
f_depid: Vue.$login.f.depids,
|
|
68
|
+
f_depname: Vue.$login.f.deps
|
|
69
|
+
})
|
|
70
|
+
},
|
|
71
|
+
delphone (index,row) {
|
|
72
|
+
this.$showMessage('是否确定要删除此条数据?', ['confirm', 'cancel']).then((res) => {
|
|
73
|
+
if (res === 'confirm') {
|
|
74
|
+
if (row.id) {
|
|
75
|
+
this.userphonelist[index].f_state = '无效'
|
|
76
|
+
} else {
|
|
77
|
+
this.userphonelist.splice(index, 1)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
})
|
|
81
|
+
},
|
|
82
|
+
close(){
|
|
83
|
+
this.show = false
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
computed: {
|
|
87
|
+
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
</script>
|
|
91
|
+
|
|
92
|
+
<style lang="less">
|
|
93
|
+
</style>
|
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div style="flex: 1.5" class="datapanel">
|
|
3
|
-
<div class="flex" >
|
|
4
|
-
<criteria-paged :model="model" v-ref:paged>
|
|
5
|
-
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
|
6
|
-
<div novalidate class="form-inline auto" partial>
|
|
7
|
-
<div class="row">
|
|
8
|
-
<div class="form-group">
|
|
9
|
-
<div class="col-sm-2 form-group">
|
|
10
|
-
<label for="startDate">开始日期:</label>
|
|
11
|
-
<datepicker id="startDate" placeholder="开始日期"
|
|
12
|
-
v-model="model.startDate"
|
|
13
|
-
:value.sync="model.startDate"
|
|
14
|
-
:disabled-days-of-Week="[]"
|
|
15
|
-
:format="'yyyy-MM-dd'"
|
|
16
|
-
condition=""
|
|
17
|
-
:show-reset-button="reset">
|
|
18
|
-
</datepicker>
|
|
19
|
-
</div>
|
|
20
|
-
<div class="col-sm-2 form-group">
|
|
21
|
-
<label for="endDate">结束日期:</label>
|
|
22
|
-
<datepicker id="endDate" placeholder="结束日期"
|
|
23
|
-
v-model="model.endDate"
|
|
24
|
-
:value.sync="model.endDate"
|
|
25
|
-
:disabled-days-of-Week="[]"
|
|
26
|
-
:format="'yyyy-MM-dd'"
|
|
27
|
-
:show-reset-button="reset">
|
|
28
|
-
</datepicker>
|
|
29
|
-
</div>
|
|
30
|
-
<div class="span" style="float:right;">
|
|
31
|
-
<button class="button_search" @click="$parent.$parent.selfSearch()">查询</button>
|
|
32
|
-
<button class="button_search" style="transform: translate(0px, 2px);" @click=" $parent.$parent.splitInfo= true">模板上传</button>
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
</div>
|
|
36
|
-
</div>
|
|
37
|
-
</criteria>
|
|
38
|
-
<accordion :one-at-atime="true" type="info" partial="list">
|
|
39
|
-
<div class="col-sm-12">
|
|
40
|
-
<div class="col-sm-2" v-for="row in model.rows">
|
|
41
|
-
<div class="row" style="padding-bottom: 8px">
|
|
42
|
-
<img src="../../assets/template.png" style="height: 200px;width: 150px">
|
|
43
|
-
<div class="title">
|
|
44
|
-
<label>模板名称:{{row.f_filename.split("_")[0]}}</label>
|
|
45
|
-
</div>
|
|
46
|
-
<div class="buttion" style="display: flex-row">
|
|
47
|
-
<button class=" button_search" style="transform: translate(0px, 2px);" @click=" $parent.$parent.getFiles(row)">下载模板</button>
|
|
48
|
-
<button class="button_delete" title="权限名称:删除模板" style="transform: translate(0px, 2px);" @click=" $parent.$parent.deleteFiles(row)">删除模板</button>
|
|
49
|
-
</div>
|
|
50
|
-
</div>
|
|
51
|
-
</div>
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
</accordion>
|
|
55
|
-
</criteria-paged>
|
|
56
|
-
<modal :show.sync="splitInfo" width="480px"
|
|
57
|
-
title="请输入模板类型并选择上传的文件" v-ref:modal large backdrop="false">
|
|
58
|
-
<article slot="modal-body" class="modal-body">
|
|
59
|
-
<div class="col-sm-12" style="display: flex;margin-bottom: 1em">
|
|
60
|
-
<label style="width: 20%">模板名称</label>
|
|
61
|
-
<input type="text" class="form-control _zoom6" v-model="headers.fusetype"
|
|
62
|
-
placeholder='模板名称'>
|
|
63
|
-
</div>
|
|
64
|
-
<file-upload class="my-file-uploader" name="my-file"
|
|
65
|
-
accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
|
|
66
|
-
action="rs/file/uploadFile" :headers="headers" tagname="确定" v-ref:file>
|
|
67
|
-
</file-upload>
|
|
68
|
-
</article>
|
|
69
|
-
<footer slot="modal-footer" style="display: none">
|
|
70
|
-
</footer>
|
|
71
|
-
</modal>
|
|
72
|
-
<work-busy :is-busy="iswork"></work-busy>
|
|
73
|
-
</div>
|
|
74
|
-
</div>
|
|
75
|
-
</template>
|
|
76
|
-
|
|
77
|
-
<script>
|
|
78
|
-
import {PagedList} from 'vue-client'
|
|
79
|
-
import axios from 'axios'
|
|
80
|
-
import fileDownload from 'js-file-download'
|
|
81
|
-
export default {
|
|
82
|
-
title: '模板管理',
|
|
83
|
-
data () {
|
|
84
|
-
return {
|
|
85
|
-
model: new PagedList('rs/sql/singleTable_OrderBy', 8, {
|
|
86
|
-
items: '"*"',
|
|
87
|
-
tablename: '"t_files"',
|
|
88
|
-
orderitem: '"id"'
|
|
89
|
-
}),
|
|
90
|
-
iswork: false,
|
|
91
|
-
headers: {'username': this.$login.f.name, 'blodid': '模板管理', 'fusetype': ''},
|
|
92
|
-
splitInfo: false
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
|
-
ready () {
|
|
96
|
-
},
|
|
97
|
-
events: {
|
|
98
|
-
'onFileError' (file, error) {
|
|
99
|
-
this.iswork = false
|
|
100
|
-
this.$showAlert('文件上传失败请检查格式' + JSON.stringify(error), 'warning', 3000)
|
|
101
|
-
},
|
|
102
|
-
'beforeFileUpload' () {
|
|
103
|
-
this.iswork = true
|
|
104
|
-
},
|
|
105
|
-
'closeFileUpload' () {
|
|
106
|
-
this.iswork = false
|
|
107
|
-
},
|
|
108
|
-
onFileChange: function (file) {
|
|
109
|
-
console.log('onFileChange', file)
|
|
110
|
-
},
|
|
111
|
-
onFileUpload: function (file, res) {
|
|
112
|
-
console.log('上传完毕' + JSON.stringify(res))
|
|
113
|
-
this.headers.f_usetype = ''
|
|
114
|
-
this.iswork = false
|
|
115
|
-
this.splitInfo = false
|
|
116
|
-
console.log(res)
|
|
117
|
-
this.$showMessage('成功上传')
|
|
118
|
-
setTimeout(() => {
|
|
119
|
-
this.selfSearch()
|
|
120
|
-
}, 1000)
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
methods: {
|
|
124
|
-
// 下载文件
|
|
125
|
-
getFiles (row) {
|
|
126
|
-
let data = {filepath: row.f_downloadpath}
|
|
127
|
-
let name = `${row.f_filename.split('_')[0]}.xlsx`
|
|
128
|
-
axios.post('rs/file/getUploadFile', data, {responseType: 'arraybuffer'}).then(res => {
|
|
129
|
-
fileDownload(res.data, name)
|
|
130
|
-
this.iswork = false
|
|
131
|
-
})
|
|
132
|
-
},
|
|
133
|
-
// 删除部分需要调整,这块是删除文件,还需要在t_files中删除记录。目前未完成
|
|
134
|
-
deleteFiles (row) {
|
|
135
|
-
if(this.$login.r.includes('删除模板')){
|
|
136
|
-
row.path = row.f_downloadpath
|
|
137
|
-
row.blobid = row.f_blobid
|
|
138
|
-
this.$resetpost('rs/logic/deletefiles', row).then((res) => {
|
|
139
|
-
setTimeout(() => {
|
|
140
|
-
this.selfSearch()
|
|
141
|
-
}, 1000)
|
|
142
|
-
})
|
|
143
|
-
}else{
|
|
144
|
-
this.$showMessage('当前登录用户没有删除模板权限, 请联系管理员!')
|
|
145
|
-
}
|
|
146
|
-
},
|
|
147
|
-
// 查询条件这块后面根据需求调整
|
|
148
|
-
selfSearch () {
|
|
149
|
-
this.model.search("f_blobid= '模板管理'")
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
</script>
|
|
154
|
-
<style scoped>
|
|
155
|
-
.title-td{
|
|
156
|
-
font-weight: bold;
|
|
157
|
-
}
|
|
158
|
-
.content-td{
|
|
159
|
-
padding-left: 2em;
|
|
160
|
-
}
|
|
161
|
-
.datapanel {
|
|
162
|
-
color: #333;
|
|
163
|
-
background-color: white;
|
|
164
|
-
padding: 10px 20px;
|
|
165
|
-
border-radius: 15px;
|
|
166
|
-
}
|
|
167
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div style="flex: 1.5" class="datapanel">
|
|
3
|
+
<div class="flex" >
|
|
4
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
|
6
|
+
<div novalidate class="form-inline auto" partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="form-group">
|
|
9
|
+
<div class="col-sm-2 form-group">
|
|
10
|
+
<label for="startDate">开始日期:</label>
|
|
11
|
+
<datepicker id="startDate" placeholder="开始日期"
|
|
12
|
+
v-model="model.startDate"
|
|
13
|
+
:value.sync="model.startDate"
|
|
14
|
+
:disabled-days-of-Week="[]"
|
|
15
|
+
:format="'yyyy-MM-dd'"
|
|
16
|
+
condition=""
|
|
17
|
+
:show-reset-button="reset">
|
|
18
|
+
</datepicker>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="col-sm-2 form-group">
|
|
21
|
+
<label for="endDate">结束日期:</label>
|
|
22
|
+
<datepicker id="endDate" placeholder="结束日期"
|
|
23
|
+
v-model="model.endDate"
|
|
24
|
+
:value.sync="model.endDate"
|
|
25
|
+
:disabled-days-of-Week="[]"
|
|
26
|
+
:format="'yyyy-MM-dd'"
|
|
27
|
+
:show-reset-button="reset">
|
|
28
|
+
</datepicker>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="span" style="float:right;">
|
|
31
|
+
<button class="button_search" @click="$parent.$parent.selfSearch()">查询</button>
|
|
32
|
+
<button class="button_search" style="transform: translate(0px, 2px);" @click=" $parent.$parent.splitInfo= true">模板上传</button>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
</criteria>
|
|
38
|
+
<accordion :one-at-atime="true" type="info" partial="list">
|
|
39
|
+
<div class="col-sm-12">
|
|
40
|
+
<div class="col-sm-2" v-for="row in model.rows">
|
|
41
|
+
<div class="row" style="padding-bottom: 8px">
|
|
42
|
+
<img src="../../assets/template.png" style="height: 200px;width: 150px">
|
|
43
|
+
<div class="title">
|
|
44
|
+
<label>模板名称:{{row.f_filename.split("_")[0]}}</label>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="buttion" style="display: flex-row">
|
|
47
|
+
<button class=" button_search" style="transform: translate(0px, 2px);" @click=" $parent.$parent.getFiles(row)">下载模板</button>
|
|
48
|
+
<button class="button_delete" title="权限名称:删除模板" style="transform: translate(0px, 2px);" @click=" $parent.$parent.deleteFiles(row)">删除模板</button>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
</div>
|
|
54
|
+
</accordion>
|
|
55
|
+
</criteria-paged>
|
|
56
|
+
<modal :show.sync="splitInfo" width="480px"
|
|
57
|
+
title="请输入模板类型并选择上传的文件" v-ref:modal large backdrop="false">
|
|
58
|
+
<article slot="modal-body" class="modal-body">
|
|
59
|
+
<div class="col-sm-12" style="display: flex;margin-bottom: 1em">
|
|
60
|
+
<label style="width: 20%">模板名称</label>
|
|
61
|
+
<input type="text" class="form-control _zoom6" v-model="headers.fusetype"
|
|
62
|
+
placeholder='模板名称'>
|
|
63
|
+
</div>
|
|
64
|
+
<file-upload class="my-file-uploader" name="my-file"
|
|
65
|
+
accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
|
|
66
|
+
action="rs/file/uploadFile" :headers="headers" tagname="确定" v-ref:file>
|
|
67
|
+
</file-upload>
|
|
68
|
+
</article>
|
|
69
|
+
<footer slot="modal-footer" style="display: none">
|
|
70
|
+
</footer>
|
|
71
|
+
</modal>
|
|
72
|
+
<work-busy :is-busy="iswork"></work-busy>
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
</template>
|
|
76
|
+
|
|
77
|
+
<script>
|
|
78
|
+
import {PagedList} from 'vue-client'
|
|
79
|
+
import axios from 'axios'
|
|
80
|
+
import fileDownload from 'js-file-download'
|
|
81
|
+
export default {
|
|
82
|
+
title: '模板管理',
|
|
83
|
+
data () {
|
|
84
|
+
return {
|
|
85
|
+
model: new PagedList('rs/sql/singleTable_OrderBy', 8, {
|
|
86
|
+
items: '"*"',
|
|
87
|
+
tablename: '"t_files"',
|
|
88
|
+
orderitem: '"id"'
|
|
89
|
+
}),
|
|
90
|
+
iswork: false,
|
|
91
|
+
headers: {'username': this.$login.f.name, 'blodid': '模板管理', 'fusetype': ''},
|
|
92
|
+
splitInfo: false
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
ready () {
|
|
96
|
+
},
|
|
97
|
+
events: {
|
|
98
|
+
'onFileError' (file, error) {
|
|
99
|
+
this.iswork = false
|
|
100
|
+
this.$showAlert('文件上传失败请检查格式' + JSON.stringify(error), 'warning', 3000)
|
|
101
|
+
},
|
|
102
|
+
'beforeFileUpload' () {
|
|
103
|
+
this.iswork = true
|
|
104
|
+
},
|
|
105
|
+
'closeFileUpload' () {
|
|
106
|
+
this.iswork = false
|
|
107
|
+
},
|
|
108
|
+
onFileChange: function (file) {
|
|
109
|
+
console.log('onFileChange', file)
|
|
110
|
+
},
|
|
111
|
+
onFileUpload: function (file, res) {
|
|
112
|
+
console.log('上传完毕' + JSON.stringify(res))
|
|
113
|
+
this.headers.f_usetype = ''
|
|
114
|
+
this.iswork = false
|
|
115
|
+
this.splitInfo = false
|
|
116
|
+
console.log(res)
|
|
117
|
+
this.$showMessage('成功上传')
|
|
118
|
+
setTimeout(() => {
|
|
119
|
+
this.selfSearch()
|
|
120
|
+
}, 1000)
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
methods: {
|
|
124
|
+
// 下载文件
|
|
125
|
+
getFiles (row) {
|
|
126
|
+
let data = {filepath: row.f_downloadpath}
|
|
127
|
+
let name = `${row.f_filename.split('_')[0]}.xlsx`
|
|
128
|
+
axios.post('rs/file/getUploadFile', data, {responseType: 'arraybuffer'}).then(res => {
|
|
129
|
+
fileDownload(res.data, name)
|
|
130
|
+
this.iswork = false
|
|
131
|
+
})
|
|
132
|
+
},
|
|
133
|
+
// 删除部分需要调整,这块是删除文件,还需要在t_files中删除记录。目前未完成
|
|
134
|
+
deleteFiles (row) {
|
|
135
|
+
if(this.$login.r.includes('删除模板')){
|
|
136
|
+
row.path = row.f_downloadpath
|
|
137
|
+
row.blobid = row.f_blobid
|
|
138
|
+
this.$resetpost('rs/logic/deletefiles', row).then((res) => {
|
|
139
|
+
setTimeout(() => {
|
|
140
|
+
this.selfSearch()
|
|
141
|
+
}, 1000)
|
|
142
|
+
})
|
|
143
|
+
}else{
|
|
144
|
+
this.$showMessage('当前登录用户没有删除模板权限, 请联系管理员!')
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
// 查询条件这块后面根据需求调整
|
|
148
|
+
selfSearch () {
|
|
149
|
+
this.model.search("f_blobid= '模板管理'")
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
</script>
|
|
154
|
+
<style scoped>
|
|
155
|
+
.title-td{
|
|
156
|
+
font-weight: bold;
|
|
157
|
+
}
|
|
158
|
+
.content-td{
|
|
159
|
+
padding-left: 2em;
|
|
160
|
+
}
|
|
161
|
+
.datapanel {
|
|
162
|
+
color: #333;
|
|
163
|
+
background-color: white;
|
|
164
|
+
padding: 10px 20px;
|
|
165
|
+
border-radius: 15px;
|
|
166
|
+
}
|
|
167
|
+
</style>
|