Blame view

src/components/fee/viewMainFee.vue 7.16 KB
b25b036d   wuxw   v1.9 优化日期
1
  <template>
24d3590f   wuxw   房屋收费页面开发完成
2
    <el-card class="box-card">
814833f5   wuxw   优化费用缴费代码
3
      <div slot="header" class="flex justify-between">
24d3590f   wuxw   房屋收费页面开发完成
4
        <span>{{ $t('viewMainFee.feeInfo') }}</span>
814833f5   wuxw   优化费用缴费代码
5
        <el-button type="primary" size="small" style="float: right; margin-left: 10px;" @click="_openCallBackOwner">
24d3590f   wuxw   房屋收费页面开发完成
6
7
8
          {{ $t('common.back') }}
        </el-button>
      </div>
814833f5   wuxw   优化费用缴费代码
9
10
  
      <el-row :gutter="20" class="text-left">
24d3590f   wuxw   房屋收费页面开发完成
11
12
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
13
            <label>{{ $t('viewMainFee.feeId') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
14
15
16
17
18
            <div>{{ mainFeeInfo.feeId }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
19
            <label>{{ $t('viewMainFee.feeFlag') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
20
21
22
23
24
            <div>{{ mainFeeInfo.feeFlagName }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
25
            <label>{{ $t('viewMainFee.feeType') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
26
27
28
29
30
            <div>{{ mainFeeInfo.feeTypeCdName }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
31
            <label>{{ $t('viewMainFee.payerObj') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
32
33
            <div>
              {{ mainFeeInfo.payerObjName }}
814833f5   wuxw   优化费用缴费代码
34
              <view-room-data v-if="mainFeeInfo.payerObjType == '3333'" ref="viewRoomData" />
24d3590f   wuxw   房屋收费页面开发完成
35
36
37
            </div>
          </div>
        </el-col>
814833f5   wuxw   优化费用缴费代码
38
  
24d3590f   wuxw   房屋收费页面开发完成
39
40
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
41
            <label>{{ $t('viewMainFee.feeItem') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
42
43
44
45
46
47
48
49
            <div class="hand" @click="_viewFeeConfig">
              {{ mainFeeInfo.feeName }}
              <view-fee-config-data ref="viewFeeConfigData" />
            </div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
50
            <label>{{ $t('viewMainFee.feeStatus') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
51
52
53
54
55
            <div>{{ mainFeeInfo.stateName }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
56
            <label>{{ $t('viewMainFee.startTime') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
57
58
59
60
61
            <div>{{ mainFeeInfo.startTime }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
62
            <label>{{ $t('viewMainFee.billingStartTime') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
63
64
65
            <div>{{ _getEndTime(mainFeeInfo) }}</div>
          </div>
        </el-col>
814833f5   wuxw   优化费用缴费代码
66
  
24d3590f   wuxw   房屋收费页面开发完成
67
68
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
69
            <label>{{ $t('viewMainFee.billingEndTime') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
70
71
72
73
74
            <div>{{ _getDeadlineTime(mainFeeInfo) }}</div>
          </div>
        </el-col>
        <el-col :span="6" v-if="mainFeeInfo.amount != '-1.00'">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
75
            <label>{{ $t('viewMainFee.feeAmount') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
76
77
78
79
80
            <div>{{ mainFeeInfo.amount }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
81
            <label>{{ $t('viewMainFee.batch') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
82
83
84
            <div>{{ mainFeeInfo.batchId }}</div>
          </div>
        </el-col>
814833f5   wuxw   优化费用缴费代码
85
86
  
        <template v-for="(item, index) in mainFeeInfo.feeAttrs">
24d3590f   wuxw   房屋收费页面开发完成
87
88
89
90
91
92
93
94
          <el-col :span="6" :key="index">
            <div class="form-item">
              <label>{{ item.specCdName }}:</label>
              <div>{{ item.value }}</div>
            </div>
          </el-col>
        </template>
      </el-row>
814833f5   wuxw   优化费用缴费代码
95
  
24d3590f   wuxw   房屋收费页面开发完成
96
97
98
      <el-row :gutter="20" v-if="mainFeeInfo.payerObjType == '3333'">
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
99
            <label>{{ $t('viewMainFee.area') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
100
101
102
103
104
            <div>{{ mainFeeInfo.builtUpArea }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
105
            <label>{{ $t('viewMainFee.unitPrice') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
106
107
108
109
110
            <div>{{ mainFeeInfo.squarePrice }}</div>
          </div>
        </el-col>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
111
            <label>{{ $t('viewMainFee.additionalFee') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
112
113
114
115
            <div>{{ mainFeeInfo.additionalAmount }}</div>
          </div>
        </el-col>
      </el-row>
814833f5   wuxw   优化费用缴费代码
116
  
24d3590f   wuxw   房屋收费页面开发完成
117
118
119
      <el-row :gutter="20" v-else>
        <el-col :span="6">
          <div class="form-item">
814833f5   wuxw   优化费用缴费代码
120
            <label>{{ $t('viewMainFee.fixedFee') }}:</label>
24d3590f   wuxw   房屋收费页面开发完成
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
            <div>{{ mainFeeInfo.additionalAmount }}</div>
          </div>
        </el-col>
      </el-row>
    </el-card>
  </template>
  
  <script>
  import { getCommunityId } from '@/api/community/communityApi'
  import { listFee } from '@/api/fee/propertyFeeApi'
  import ViewRoomData from './viewRoomData'
  import ViewFeeConfigData from './viewFeeConfigData'
  
  export default {
    name: 'ViewMainFee',
    components: {
      ViewRoomData,
      ViewFeeConfigData
    },
    props: {
      feeName: {
        type: String,
        required: true
      },
      feeTypeCd: {
        type: String,
        required: true
      },
      payName: {
        type: String,
        required: true
      }
    },
    data() {
      return {
        mainFeeInfo: {
          feeName: this.feeName,
          feeId: "",
          feeTypeCd: '',
          builtUpArea: "",
          startTime: "",
          endTime: "",
          amount: "-1.00",
          feeFlagName: '',
          feeTypeCdName: '',
          configId: '',
          stateName: '',
          additionalAmount: 0.0,
          squarePrice: 0,
          deadlineTime: '',
          payerObjType: '',
          payerObjId: '',
          payerObjName: '',
          feeAttrs: [],
          batchId: ''
        },
        communityId: ''
      }
    },
    created() {
      this.communityId = getCommunityId()
      const feeId = this.$route.query.feeId
      if (feeId) {
        this.loadMainFeeInfo({ feeId })
      }
    },
    methods: {
      async loadMainFeeInfo(params) {
        try {
          const res = await listFee({
            ...params,
            communityId: this.communityId,
            page: 1,
            row: 1
          })
814833f5   wuxw   优化费用缴费代码
196
197
198
199
200
  
          if (res.fees && res.fees.length > 0) {
            Object.assign(this.mainFeeInfo, res.fees[0])
            this.mainFeeInfo.feeAttrs = res.fees[0].feeAttrs || []
  
24d3590f   wuxw   房屋收费页面开发完成
201
202
203
204
205
206
207
            if (this.mainFeeInfo.payerObjType === '3333') {
              this._loadRoomAndOwnerByRoomId()
            } else if (this.mainFeeInfo.payerObjType === '6666') {
              this._loadRoomAndOwnerByCarId()
            } else {
              this._loadContractAndOwnerByContractId()
            }
814833f5   wuxw   优化费用缴费代码
208
  
24d3590f   wuxw   房屋收费页面开发完成
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
            this.$emit('listFeeDetail', { feeId: this.mainFeeInfo.feeId })
          }
        } catch (error) {
          console.error('加载主费用信息失败:', error)
        }
      },
      _openCallBackOwner() {
        this.$router.go(-1)
      },
      _getDeadlineTime(fee) {
        if (fee.endTime === fee.deadlineTime || fee.state === '2009001') {
          return "-"
        }
        return fee.deadlineTime
      },
      _getEndTime(fee) {
        if (fee.state === '2009001') {
          return "-"
        }
        return fee.endTime
      },
      _viewFeeConfig() {
        this.$refs.viewFeeConfigData.open({ configId: this.mainFeeInfo.configId })
      },
      _viewRoomData() {
        this.$refs.viewRoomData.open({ roomId: this.mainFeeInfo.payerObjId })
      },
      async _loadRoomAndOwnerByRoomId() {
        // 实现获取房间和业主信息的逻辑
      },
      async _loadRoomAndOwnerByCarId() {
        // 实现获取车位和业主信息的逻辑
      },
      async _loadContractAndOwnerByContractId() {
        // 实现获取合同和业主信息的逻辑
      }
    }
  }
  </script>
  
  <style scoped>
  .form-item {
814833f5   wuxw   优化费用缴费代码
251
252
253
254
255
256
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    margin-bottom: 30px;
    align-items: center;
  
24d3590f   wuxw   房屋收费页面开发完成
257
    div {
814833f5   wuxw   优化费用缴费代码
258
      margin-left: 10px;
24d3590f   wuxw   房屋收费页面开发完成
259
260
261
262
263
264
    }
  }
  
  .hand {
    cursor: pointer;
    color: #409EFF;
814833f5   wuxw   优化费用缴费代码
265
  
24d3590f   wuxw   房屋收费页面开发完成
266
267
268
269
270
    &:hover {
      text-decoration: underline;
    }
  }
  </style>