Commit 13f457c98e6f71dedf27656c434b26c1e67c894d

Authored by wuxw
1 parent 274e44b5

v1.9 优化OA测试bug 优化

src/components/oa/newOaWorkflowForm.vue
@@ -213,11 +213,14 @@ export default { @@ -213,11 +213,14 @@ export default {
213 if (res.code === 0) { 213 if (res.code === 0) {
214 this.$message.success(this.$t('common.operationSuccess')) 214 this.$message.success(this.$t('common.operationSuccess'))
215 this.resetForm() 215 this.resetForm()
216 - this.$emit('switch-tab', 'newOaWorkflowPool') 216 + console.log('子组件准备发出 success 事件', 'newOaWorkflowUndo')
  217 + this.$emit('success', 'newOaWorkflowUndo')
  218 + console.log('子组件已发出 success 事件')
217 } else { 219 } else {
218 this.$message.error(res.msg || this.$t('common.submitFailed')) 220 this.$message.error(res.msg || this.$t('common.submitFailed'))
219 } 221 }
220 } catch (error) { 222 } catch (error) {
  223 + console.log('提交表单失败,错误信息:', error)
221 if (error.message) { 224 if (error.message) {
222 // 表单验证错误 225 // 表单验证错误
223 return 226 return
@@ -249,7 +252,7 @@ export default { @@ -249,7 +252,7 @@ export default {
249 252
250 resetForm() { 253 resetForm() {
251 this.$refs.form.resetFields() 254 this.$refs.form.resetFields()
252 - if (this.$refs.uploadFile) { 255 + if (this.$refs.uploadFile && this.$refs.uploadFile.clear) {
253 this.$refs.uploadFile.clear() 256 this.$refs.uploadFile.clear()
254 } 257 }
255 this.fileName = '' 258 this.fileName = ''
src/views/fee/roomFeeImportDetail.md deleted
1 -```html  
2 -<div class=" animated fadeInRight ecommerce">  
3 - <div class="row">  
4 - <div class="col-lg-12">  
5 - <div class="ibox ">  
6 - <div class="ibox-title">  
7 - <h5>  
8 - <span><vc:i18n name="查询条件" namespace="roomFeeImportDetail"></vc:i18n></span>  
9 - </h5>  
10 - <div class="ibox-tools" style="top:10px;">  
11 - <button type="button" class="btn btn-link btn-sm" style="margin-right:10px;"  
12 - v-on:click="_moreCondition()">  
13 - {{roomFeeImportDetailInfo.moreCondition == true?'隐藏':'更多'}}  
14 - </button>  
15 - </div>  
16 - </div>  
17 - <div class="ibox-content">  
18 - <div class="row">  
19 - <div class="col-sm-4">  
20 - <div class="form-group">  
21 - <input type="text" :placeholder="vc.i18n('请输入楼栋编号','roomFeeImportDetail')"  
22 - v-model="roomFeeImportDetailInfo.conditions.floorNum" class=" form-control">  
23 - </div>  
24 - </div>  
25 - <div class="col-sm-4">  
26 - <div class="form-group">  
27 - <input type="text" :placeholder="vc.i18n('请输入单元编号','roomFeeImportDetail')"  
28 - v-model="roomFeeImportDetailInfo.conditions.unitNum" class=" form-control">  
29 - </div>  
30 - </div>  
31 - <div class="col-sm-3">  
32 - <div class="form-group">  
33 - <input type="text" :placeholder="vc.i18n('请输入房屋编号','roomFeeImportDetail')"  
34 - v-model="roomFeeImportDetailInfo.conditions.roomNum" class=" form-control">  
35 - </div>  
36 - </div>  
37 - <div class="col-sm-2">  
38 - <button type="button" class="btn btn-primary btn-sm" v-on:click="_queryFeeDetailMethod()">  
39 - <i class="fa fa-search"></i>  
40 - <span><vc:i18n name="查询" namespace="roomFeeImportDetail"></vc:i18n></span>  
41 - </button>  
42 - </div>  
43 - </div>  
44 - <!--<div class="row">  
45 - <div class="col-sm-4" v-if="roomFeeImportDetailInfo.moreCondition == true">  
46 - <div class="form-group">  
47 - <input type="text" :placeholder="vc.i18n('请输入信息ID','roomFeeImportDetail')"  
48 - v-model="roomFeeImportDetailInfo.conditions.activitiesId" class=" form-control">  
49 - </div>  
50 - </div>  
51 - </div>-->  
52 - </div>  
53 - </div>  
54 - </div>  
55 - </div>  
56 - <div class="row">  
57 - <div class="col-lg-12">  
58 - <div class="ibox">  
59 - <div class="ibox-title">  
60 - <h5>  
61 - <span><vc:i18n name="导入费用详情" namespace="roomFeeImportDetail"></vc:i18n></span>  
62 - </h5>  
63 - <div class="ibox-tools" style="top:10px;">  
64 - <button type="button" class="btn btn-primary btn-sm" v-on:click="_goBack()">  
65 - <i class="fa fa-close"></i>返回  
66 - </button>  
67 - </div>  
68 - </div>  
69 - <div class="ibox-content">  
70 - <table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">  
71 - <thead>  
72 - <tr>  
73 - <th class="text-center">  
74 - <span><vc:i18n name="楼栋编号" namespace="roomFeeImportDetail"></vc:i18n></span>  
75 - </th>  
76 - <th class="text-center">  
77 - <span><vc:i18n name="单元编号" namespace="roomFeeImportDetail"></vc:i18n></span>  
78 - </th>  
79 - <th class="text-center">  
80 - <span><vc:i18n name="房屋编号" namespace="roomFeeImportDetail"></vc:i18n></span>  
81 - </th>  
82 - <th class="text-center">  
83 - <span><vc:i18n name="费用名称" namespace="roomFeeImportDetail"></vc:i18n></span>  
84 - </th>  
85 - <th class="text-center">  
86 - <span><vc:i18n name="开始时间" namespace="roomFeeImportDetail"></vc:i18n></span>  
87 - </th>  
88 - <th class="text-center">  
89 - <span><vc:i18n name="结束时间" namespace="roomFeeImportDetail"></vc:i18n></span>  
90 - </th>  
91 - <th class="text-center">  
92 - <span><vc:i18n name="总金额" namespace="roomFeeImportDetail"></vc:i18n></span>  
93 - </th>  
94 - <th class="text-center">  
95 - <span><vc:i18n name="备注" namespace="roomFeeImportDetail"></vc:i18n></span>  
96 - </th>  
97 - <th class="text-center">  
98 - <span><vc:i18n name="状态" namespace="roomFeeImportDetail"></vc:i18n></span>  
99 - </th>  
100 - </tr>  
101 - </thead>  
102 - <tbody>  
103 - <tr v-for="detail in roomFeeImportDetailInfo.importFeeDetails">  
104 - <td class="text-center">{{detail.floorNum}}</td>  
105 - <td class="text-center">{{detail.unitNum}}</td>  
106 - <td class="text-center">{{detail.roomNum}}</td>  
107 - <td class="text-center">{{detail.feeName}}</td>  
108 - <td class="text-center">{{detail.startTime}}</td>  
109 - <td class="text-center">{{detail.endTime}}</td>  
110 - <td class="text-center">{{detail.amount}}</td>  
111 - <td class="text-center">{{detail.remark}}</td>  
112 - <td class="text-center">  
113 - <span class="badge badge-success" v-if="detail.state == '1000'">  
114 - <span><vc:i18n name="导入成功" namespace="roomFeeImportDetail"></vc:i18n></span>  
115 - </span>  
116 - <span class="badge badge-danger" v-else>  
117 - <span><vc:i18n name="导入失败" namespace="roomFeeImportDetail"></vc:i18n></span>  
118 - </span>  
119 - </td>  
120 - </tr>  
121 - </tbody>  
122 - <tfoot>  
123 - <tr>  
124 - <td colspan="9">  
125 - <ul class="pagination float-right"></ul>  
126 - </td>  
127 - </tr>  
128 - </tfoot>  
129 - </table>  
130 - <!-- 分页 -->  
131 - <vc:create path="frame/pagination"></vc:create>  
132 - </div>  
133 - </div>  
134 - </div>  
135 - </div>  
136 -</div>  
137 -```  
138 -```js  
139 -/**  
140 - 入驻小区  
141 - **/  
142 -(function (vc) {  
143 - var DEFAULT_PAGE = 1;  
144 - var DEFAULT_ROWS = 10;  
145 - vc.extends({  
146 - data: {  
147 - roomFeeImportDetailInfo: {  
148 - importFeeDetails: [],  
149 - total: 0,  
150 - records: 1,  
151 - moreCondition: false,  
152 - conditions: {  
153 - floorNum: '',  
154 - unitNum: '',  
155 - roomNum: '',  
156 - importFeeId: ''  
157 - }  
158 - }  
159 - },  
160 - _initMethod: function () {  
161 - $that.roomFeeImportDetailInfo.conditions.importFeeId = vc.getParam('importFeeId');  
162 - $that._listImportFeeDetails(DEFAULT_PAGE, DEFAULT_ROWS);  
163 - },  
164 - _initEvent: function () {  
165 - vc.on('pagination', 'page_event', function (_currentPage) {  
166 - vc.component._listImportFeeDetails(_currentPage, DEFAULT_ROWS);  
167 - });  
168 - },  
169 - methods: {  
170 - _listImportFeeDetails: function (_page, _rows) {  
171 - vc.component.roomFeeImportDetailInfo.conditions.page = _page;  
172 - vc.component.roomFeeImportDetailInfo.conditions.row = _rows;  
173 - vc.component.roomFeeImportDetailInfo.conditions.communityId = vc.getCurrentCommunity().communityId;  
174 - var param = {  
175 - params: vc.component.roomFeeImportDetailInfo.conditions  
176 - };  
177 - //发送get请求  
178 - vc.http.apiGet('/importFee/queryImportFeeDetail',  
179 - param,  
180 - function (json, res) {  
181 - var _roomFeeImportDetailInfo = JSON.parse(json);  
182 - vc.component.roomFeeImportDetailInfo.total = _roomFeeImportDetailInfo.total;  
183 - vc.component.roomFeeImportDetailInfo.records = _roomFeeImportDetailInfo.records;  
184 - vc.component.roomFeeImportDetailInfo.importFeeDetails = _roomFeeImportDetailInfo.data;  
185 - vc.emit('pagination', 'init', {  
186 - total: vc.component.roomFeeImportDetailInfo.records,  
187 - currentPage: _page  
188 - });  
189 - }, function (errInfo, error) {  
190 - console.log('请求失败处理');  
191 - }  
192 - );  
193 - },  
194 - _openBillDetail: function () {  
195 - },  
196 - _queryFeeDetailMethod: function () {  
197 - vc.component._listImportFeeDetails(DEFAULT_PAGE, DEFAULT_ROWS);  
198 - },  
199 - _moreCondition: function () {  
200 - if (vc.component.roomFeeImportDetailInfo.moreCondition) {  
201 - vc.component.roomFeeImportDetailInfo.moreCondition = false;  
202 - } else {  
203 - vc.component.roomFeeImportDetailInfo.moreCondition = true;  
204 - }  
205 - },  
206 - _goBack: function () {  
207 - vc.goBack();  
208 - }  
209 - }  
210 - });  
211 -})(window.vc);  
212 -```  
213 \ No newline at end of file 0 \ No newline at end of file
src/views/fee/roomFeeImportList.vue
@@ -28,7 +28,7 @@ @@ -28,7 +28,7 @@
28 <el-card class="table-card"> 28 <el-card class="table-card">
29 <div slot="header" class="flex justify-between"> 29 <div slot="header" class="flex justify-between">
30 <span>{{ $t('roomFeeImport.table.title') }}</span> 30 <span>{{ $t('roomFeeImport.table.title') }}</span>
31 - <el-button type="primary" style="float: right;" @click="handleImport"> 31 + <el-button type="primary" size="small" @click="handleImport">
32 {{ $t('roomFeeImport.button.import') }} 32 {{ $t('roomFeeImport.button.import') }}
33 </el-button> 33 </el-button>
34 </div> 34 </div>
src/views/fee/staffFeeManageList.vue
@@ -35,9 +35,9 @@ @@ -35,9 +35,9 @@
35 <el-card> 35 <el-card>
36 <div slot="header" class="flex justify-between"> 36 <div slot="header" class="flex justify-between">
37 <span>{{ $t('staffFeeManage.list.title') }}</span> 37 <span>{{ $t('staffFeeManage.list.title') }}</span>
38 - <el-button type="primary" size="small" class="float-right" @click="handleExport"> 38 + <!-- <el-button type="primary" size="small" class="float-right" @click="handleExport">
39 {{ $t('common.export') }} 39 {{ $t('common.export') }}
40 - </el-button> 40 + </el-button> -->
41 </div> 41 </div>
42 <el-table v-loading="loading" :data="tableData" border style="width: 100%"> 42 <el-table v-loading="loading" :data="tableData" border style="width: 100%">
43 <el-table-column prop="userId" :label="$t('staffFeeManage.table.userCode')" align="center" /> 43 <el-table-column prop="userId" :label="$t('staffFeeManage.table.userCode')" align="center" />
@@ -122,9 +122,6 @@ export default { @@ -122,9 +122,6 @@ export default {
122 this.pagination.current = 1 122 this.pagination.current = 1
123 this.getList() 123 this.getList()
124 }, 124 },
125 - handleExport() {  
126 - // 导出逻辑  
127 - },  
128 handleSizeChange(val) { 125 handleSizeChange(val) {
129 this.pagination.size = val 126 this.pagination.size = val
130 this.getList() 127 this.getList()
src/views/oa/newOaWorkflowDetailList.vue
@@ -185,7 +185,7 @@ export default { @@ -185,7 +185,7 @@ export default {
185 comments: [], 185 comments: [],
186 action: '', 186 action: '',
187 audit: { 187 audit: {
188 - auditCode: '1100', 188 + auditCode: '',
189 auditMessage: '', 189 auditMessage: '',
190 staffId: '', 190 staffId: '',
191 staffName: '', 191 staffName: '',
src/views/oa/newOaWorkflowList.vue
@@ -23,7 +23,7 @@ @@ -23,7 +23,7 @@
23 <el-col :span="20"> 23 <el-col :span="20">
24 <div class="content-wrapper"> 24 <div class="content-wrapper">
25 <new-oa-workflow-pool v-show="activeTab === 'newOaWorkflowPool'" ref="newOaWorkflowPool" /> 25 <new-oa-workflow-pool v-show="activeTab === 'newOaWorkflowPool'" ref="newOaWorkflowPool" />
26 - <new-oa-workflow-form v-if="activeTab === 'newOaWorkflowForm'" ref="newOaWorkflowForm" @switch-tab="switchTab"/> 26 + <new-oa-workflow-form v-if="activeTab === 'newOaWorkflowForm'" ref="newOaWorkflowForm" @success="handleFormSuccess"/>
27 <new-oa-workflow-undo v-show="activeTab === 'newOaWorkflowUndo'" ref="newOaWorkflowUndo" /> 27 <new-oa-workflow-undo v-show="activeTab === 'newOaWorkflowUndo'" ref="newOaWorkflowUndo" />
28 <new-oa-workflow-finish v-show="activeTab === 'newOaWorkflowFinish'" ref="newOaWorkflowFinish" /> 28 <new-oa-workflow-finish v-show="activeTab === 'newOaWorkflowFinish'" ref="newOaWorkflowFinish" />
29 </div> 29 </div>
@@ -69,12 +69,17 @@ export default { @@ -69,12 +69,17 @@ export default {
69 } 69 }
70 }, 70 },
71 switchTab(tab) { 71 switchTab(tab) {
  72 + console.log('父组件 switchTab 被调用,参数 tab:', tab)
72 if (this.activeTab === tab) return 73 if (this.activeTab === tab) return
73 this.activeTab = tab 74 this.activeTab = tab
74 setTimeout(() => { 75 setTimeout(() => {
75 this.$refs[tab].open({ flowId: this.flowId }) 76 this.$refs[tab].open({ flowId: this.flowId })
76 }, 500) 77 }, 500)
77 }, 78 },
  79 + handleFormSuccess(targetTab) {
  80 + console.log('父组件收到 success 事件,目标 tab:', targetTab)
  81 + this.switchTab(targetTab)
  82 + }
78 } 83 }
79 } 84 }
80 </script> 85 </script>
src/views/user/login/Login.vue
@@ -44,8 +44,8 @@ export default { @@ -44,8 +44,8 @@ export default {
44 logo: '', 44 logo: '',
45 companyName:'', 45 companyName:'',
46 loginForm: { 46 loginForm: {
47 - username: 'wuxw',  
48 - passwd: 'admin', 47 + username: '',
  48 + passwd: '',
49 validateCode: '' 49 validateCode: ''
50 }, 50 },
51 captchaUrl: '', 51 captchaUrl: '',