diff --git a/src/views/fee/feeDetail.vue b/src/views/fee/feeDetail.vue
new file mode 100644
index 0000000..b84c85d
--- /dev/null
+++ b/src/views/fee/feeDetail.vue
@@ -0,0 +1,359 @@
+
+
+
+
+
+ {{ $t('feeDetail.title') }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('feeDetail.feeId') }}
+
+ {{ feeDetailInfo.feeId }}
+
+
+
+
+
+ {{ $t('feeDetail.feeFlag') }}
+
+ {{ feeDetailInfo.feeFlagName || '-' }}
+
+
+
+
+
+ {{ $t('feeDetail.feeType') }}
+
+ {{ feeDetailInfo.feeTypeCdName }}
+
+
+
+
+
+ {{ $t('feeDetail.payerObj') }}
+
+ {{ feeDetailInfo.payerObjName || '-' }}
+
+
+
+
+
+
+
+
+ {{ $t('feeDetail.feeItem') }}
+
+ {{ feeDetailInfo.feeName }}
+
+
+
+
+
+ {{ $t('feeDetail.feeStatus') }}
+
+ {{ feeDetailInfo.stateName }}
+
+
+
+
+
+ {{ $t('feeDetail.createTime') }}
+
+ {{ feeDetailInfo.startTime }}
+
+
+
+
+
+ {{ $t('feeDetail.batchId') }}
+
+ {{ feeDetailInfo.batchId }}
+
+
+
+
+
+
+
+
+ {{ $t('feeDetail.startTime') }}
+
+ {{ getEndTime(feeDetailInfo) }}
+
+
+
+
+
+ {{ $t('feeDetail.endTime') }}
+
+ {{ getDeadlineTime(feeDetailInfo) }}
+
+
+
+
+
+ {{ $t('feeDetail.owedAmount') }}
+
+ {{ feeDetailInfo.amountOwed }}
+
+
+
+
+
+
+
+
+ {{ item.specCdName }}:
+
+ {{ item.value }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/fee/feeDetailCarLang.js b/src/views/fee/feeDetailCarLang.js
new file mode 100644
index 0000000..25cf2e5
--- /dev/null
+++ b/src/views/fee/feeDetailCarLang.js
@@ -0,0 +1,36 @@
+export const messages = {
+ en: {
+ feeDetailCar: {
+ licensePlate: 'License Plate',
+ licenseType: 'License Type',
+ carType: 'Car Type',
+ color: 'Color',
+ owner: 'Owner',
+ parkingSpace: 'Parking Space',
+ validityPeriod: 'Validity Period',
+ temporaryCar: 'Temporary Car',
+ parkingLot: 'Parking Lot',
+ spaceReleased: 'Space Released'
+ },
+ feeDetailCarDemo: {
+ openComponent: 'Open Car Detail'
+ }
+ },
+ zh: {
+ feeDetailCar: {
+ licensePlate: '车牌号',
+ licenseType: '车牌类型',
+ carType: '车辆类型',
+ color: '颜色',
+ owner: '业主',
+ parkingSpace: '车位',
+ validityPeriod: '有效期',
+ temporaryCar: '临时车',
+ parkingLot: '车场',
+ spaceReleased: '车位已释放'
+ },
+ feeDetailCarDemo: {
+ openComponent: '打开车辆详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailConfigLang.js b/src/views/fee/feeDetailConfigLang.js
new file mode 100644
index 0000000..2ba2c75
--- /dev/null
+++ b/src/views/fee/feeDetailConfigLang.js
@@ -0,0 +1,50 @@
+export const messages = {
+ en: {
+ feeDetailConfig: {
+ feeType: 'Fee Type',
+ feeItem: 'Fee Item',
+ feeFlag: 'Fee Flag',
+ reminderType: 'Reminder Type',
+ paymentType: 'Payment Type',
+ paymentCycle: 'Payment Cycle',
+ unit: 'Unit',
+ formula: 'Formula',
+ unitPrice: 'Unit Price',
+ additionalFee: 'Additional/Fixed Fee',
+ accountDeduction: 'Account Deduction',
+ mobilePayment: 'Mobile Payment',
+ decimalPlaces: 'Decimal Places',
+ prepaid: 'Prepaid',
+ postpaid: 'Postpaid',
+ yes: 'Yes',
+ no: 'No'
+ },
+ feeDetailConfigDemo: {
+ openComponent: 'Open Config Detail'
+ }
+ },
+ zh: {
+ feeDetailConfig: {
+ feeType: '费用类型',
+ feeItem: '收费项目',
+ feeFlag: '费用标识',
+ reminderType: '催缴类型',
+ paymentType: '付费类型',
+ paymentCycle: '缴费周期',
+ unit: '单位',
+ formula: '公式',
+ unitPrice: '计费单价',
+ additionalFee: '附加/固定费用',
+ accountDeduction: '账户抵扣',
+ mobilePayment: '手机缴费',
+ decimalPlaces: '保留小数位',
+ prepaid: '预付费',
+ postpaid: '后付费',
+ yes: '是',
+ no: '否'
+ },
+ feeDetailConfigDemo: {
+ openComponent: '打开配置详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailContractLang.js b/src/views/fee/feeDetailContractLang.js
new file mode 100644
index 0000000..ba403e7
--- /dev/null
+++ b/src/views/fee/feeDetailContractLang.js
@@ -0,0 +1,36 @@
+export const messages = {
+ en: {
+ feeDetailContract: {
+ contractName: 'Contract Name',
+ contractCode: 'Contract Code',
+ parentContractCode: 'Parent Contract Code',
+ contractType: 'Contract Type',
+ operator: 'Operator',
+ contractAmount: 'Contract Amount',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ draftTime: 'Draft Time',
+ status: 'Status'
+ },
+ feeDetailContractDemo: {
+ openComponent: 'Open Contract Detail'
+ }
+ },
+ zh: {
+ feeDetailContract: {
+ contractName: '合同名称',
+ contractCode: '合同编号',
+ parentContractCode: '父合同编号',
+ contractType: '合同类型',
+ operator: '经办人',
+ contractAmount: '合同金额',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ draftTime: '起草时间',
+ status: '状态'
+ },
+ feeDetailContractDemo: {
+ openComponent: '打开合同详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailDiscountLang.js b/src/views/fee/feeDetailDiscountLang.js
new file mode 100644
index 0000000..15d098e
--- /dev/null
+++ b/src/views/fee/feeDetailDiscountLang.js
@@ -0,0 +1,44 @@
+export const messages = {
+ en: {
+ feeDetailDiscount: {
+ roomName: 'Room(Building-Unit-Room)',
+ discountId: 'Discount ID',
+ discountName: 'Discount Name',
+ applyType: 'Apply Type',
+ applicant: 'Applicant',
+ applicantPhone: 'Applicant Phone',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ status: 'Status',
+ createTime: 'Create Time',
+ useStatus: 'Use Status',
+ notUsed: 'Not Used',
+ used: 'Used',
+ returnType: 'Return Type',
+ accountBalance: 'Account Balance',
+ discount: 'Discount',
+ returnAmount: 'Return Amount'
+ }
+ },
+ zh: {
+ feeDetailDiscount: {
+ roomName: '房屋(楼栋-单元-房屋)',
+ discountId: '折扣ID',
+ discountName: '折扣名称',
+ applyType: '申请类型',
+ applicant: '申请人',
+ applicantPhone: '申请电话',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ status: '状态',
+ createTime: '创建时间',
+ useStatus: '使用状态',
+ notUsed: '未使用',
+ used: '已使用',
+ returnType: '返还类型',
+ accountBalance: '账户余额',
+ discount: '折扣',
+ returnAmount: '返还金额'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailHisFeeLang.js b/src/views/fee/feeDetailHisFeeLang.js
new file mode 100644
index 0000000..8e763ae
--- /dev/null
+++ b/src/views/fee/feeDetailHisFeeLang.js
@@ -0,0 +1,42 @@
+export const messages = {
+ en: {
+ feeDetailHisFee: {
+ feeName: 'Fee Item',
+ payerObjName: 'Charge Object',
+ cycles: 'Cycle (Unit: Month)',
+ amount: 'Receivable/Received (Unit: Yuan)',
+ paymentMethod: 'Payment Method',
+ paymentPeriod: 'Payment Period',
+ paymentTime: 'Payment Time',
+ cashier: 'Cashier',
+ status: 'Status',
+ remark: 'Remark',
+ operation: 'Operation',
+ detail: 'Detail',
+ accountDeduction: 'Account Deduction'
+ },
+ feeDetailHisFeeDemo: {
+ openComponent: 'Open Fee Detail History'
+ }
+ },
+ zh: {
+ feeDetailHisFee: {
+ feeName: '费用项',
+ payerObjName: '收费对象',
+ cycles: '周期(单位:月)',
+ amount: '应收/实收(单位:元)',
+ paymentMethod: '缴费方式',
+ paymentPeriod: '缴费起始段',
+ paymentTime: '缴费时间',
+ cashier: '收银员',
+ status: '状态',
+ remark: '备注',
+ operation: '操作',
+ detail: '详情',
+ accountDeduction: '账户扣款'
+ },
+ feeDetailHisFeeDemo: {
+ openComponent: '打开历史费用详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailHisLang.js b/src/views/fee/feeDetailHisLang.js
new file mode 100644
index 0000000..c7c2ebb
--- /dev/null
+++ b/src/views/fee/feeDetailHisLang.js
@@ -0,0 +1,30 @@
+export const messages = {
+ en: {
+ feeDetailHis: {
+ feeName: 'Fee Item',
+ startTime: 'Account Time',
+ endTime: 'Billing Start Time',
+ operation: 'Action',
+ operator: 'Operator',
+ operationTime: 'Operation Time',
+ add: 'Add',
+ delete: 'Delete',
+ modifyNew: 'Modify(New)',
+ modifyOld: 'Modify(Old)'
+ }
+ },
+ zh: {
+ feeDetailHis: {
+ feeName: '费用项',
+ startTime: '建账时间',
+ endTime: '计费起始时间',
+ operation: '动作',
+ operator: '操作人',
+ operationTime: '操作时间',
+ add: '添加',
+ delete: '删除',
+ modifyNew: '修改(新)',
+ modifyOld: '修改(旧)'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailImportLang.js b/src/views/fee/feeDetailImportLang.js
new file mode 100644
index 0000000..644eea8
--- /dev/null
+++ b/src/views/fee/feeDetailImportLang.js
@@ -0,0 +1,32 @@
+export const messages = {
+ en: {
+ feeDetailImport: {
+ floorNum: 'Building No.',
+ unitNum: 'Unit No.',
+ roomNum: 'Room No.',
+ feeName: 'Fee Name',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ totalAmount: 'Total Amount',
+ remark: 'Remark',
+ status: 'Status',
+ importSuccess: 'Import Success',
+ importFailed: 'Import Failed'
+ }
+ },
+ zh: {
+ feeDetailImport: {
+ floorNum: '楼栋编号',
+ unitNum: '单元编号',
+ roomNum: '房屋编号',
+ feeName: '费用名称',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ totalAmount: '总金额',
+ remark: '备注',
+ status: '状态',
+ importSuccess: '导入成功',
+ importFailed: '导入失败'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailLang.js b/src/views/fee/feeDetailLang.js
new file mode 100644
index 0000000..73f09e2
--- /dev/null
+++ b/src/views/fee/feeDetailLang.js
@@ -0,0 +1,493 @@
+
+export const messages = {
+ en: {
+ feeDetail: {
+ title: 'Fee Information',
+ feeId: 'Fee ID:',
+ feeFlag: 'Fee Flag:',
+ feeType: 'Fee Type:',
+ payerObj: 'Payer:',
+ feeItem: 'Fee Item:',
+ feeStatus: 'Fee Status:',
+ createTime: 'Create Time:',
+ batchId: 'Batch:',
+ startTime: 'Start Time:',
+ endTime: 'End Time:',
+ owedAmount: 'Owed Amount:',
+ paymentRecord: 'Payment Records',
+ monthlyView: 'Monthly View',
+ relatedRoom: 'Related Rooms',
+ relatedCar: 'Related Cars',
+ relatedContract: 'Related Contracts',
+ modificationRecord: 'Modification Records',
+ owner: 'Owner',
+ sameFeeObj: 'Same Fee Objects',
+ relatedMeter: 'Related Meters',
+ relatedImport: 'Related Imports',
+ discountApply: 'Discount Application',
+ reprintReceipt: 'Reprint Receipt',
+ feeSplit: 'Fee Split',
+ billRule: 'Bill Rules',
+ feeBill: 'Fee Bills'
+ },
+ feeDetailHisFee: {
+ feeName: 'Fee Item',
+ payerObjName: 'Charge Object',
+ cycles: 'Cycle (Unit: Month)',
+ amount: 'Receivable/Received (Unit: Yuan)',
+ paymentMethod: 'Payment Method',
+ paymentPeriod: 'Payment Period',
+ paymentTime: 'Payment Time',
+ cashier: 'Cashier',
+ status: 'Status',
+ remark: 'Remark',
+ operation: 'Operation',
+ detail: 'Detail',
+ accountDeduction: 'Account Deduction'
+ },
+ feeDetailHisFeeDemo: {
+ openComponent: 'Open Fee Detail History'
+ },
+ feeDetailMonthFee: {
+ feeItem: 'Fee Item',
+ feeFlag: 'Fee Flag',
+ feeType: 'Fee Type',
+ chargeYearMonth: 'Charge Year-Month',
+ receivableAmount: 'Receivable Amount',
+ description: 'Description',
+ lastDegrees: 'Last Degrees:',
+ currentDegrees: 'Current Degrees:',
+ unitPrice: 'Unit Price:',
+ additionalFee: 'Additional Fee:',
+ usage: 'Usage:',
+ algorithm: 'Algorithm:',
+ fixedFee: 'Fixed Fee:'
+ },
+ feeDetailMonthFeeDemo: {
+ openComponent: 'Open Month Fee Detail'
+ },
+ feeDetailRoom: {
+ roomId: 'Room ID',
+ floor: 'Floor',
+ type: 'Type',
+ area: 'Built-up/Indoor Area',
+ rent: 'Rent',
+ roomStatus: 'Room Status',
+ roomArrears: 'Room Arrears',
+ operation: 'Operation',
+ businessAcceptance: 'Business Acceptance',
+ updateDaily: 'Updated Daily',
+ searchPlaceholder: 'Please enter room number like 1-1-1'
+ },
+ feeDetailRoomDemo: {
+ openComponent: 'Open Room Detail'
+ },
+ feeDetailCar: {
+ licensePlate: 'License Plate',
+ licenseType: 'License Type',
+ carType: 'Car Type',
+ color: 'Color',
+ owner: 'Owner',
+ parkingSpace: 'Parking Space',
+ validityPeriod: 'Validity Period',
+ temporaryCar: 'Temporary Car',
+ parkingLot: 'Parking Lot',
+ spaceReleased: 'Space Released'
+ },
+ feeDetailCarDemo: {
+ openComponent: 'Open Car Detail'
+ },
+ feeDetailContract: {
+ contractName: 'Contract Name',
+ contractCode: 'Contract Code',
+ parentContractCode: 'Parent Contract Code',
+ contractType: 'Contract Type',
+ operator: 'Operator',
+ contractAmount: 'Contract Amount',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ draftTime: 'Draft Time',
+ status: 'Status'
+ },
+ feeDetailContractDemo: {
+ openComponent: 'Open Contract Detail'
+ },
+ feeDetailConfig: {
+ feeType: 'Fee Type',
+ feeItem: 'Fee Item',
+ feeFlag: 'Fee Flag',
+ reminderType: 'Reminder Type',
+ paymentType: 'Payment Type',
+ paymentCycle: 'Payment Cycle',
+ unit: 'Unit',
+ formula: 'Formula',
+ unitPrice: 'Unit Price',
+ additionalFee: 'Additional/Fixed Fee',
+ accountDeduction: 'Account Deduction',
+ mobilePayment: 'Mobile Payment',
+ decimalPlaces: 'Decimal Places',
+ prepaid: 'Prepaid',
+ postpaid: 'Postpaid',
+ yes: 'Yes',
+ no: 'No'
+ },
+ feeDetailConfigDemo: {
+ openComponent: 'Open Config Detail'
+ },
+ feeDetailHis: {
+ feeName: 'Fee Item',
+ startTime: 'Account Time',
+ endTime: 'Billing Start Time',
+ operation: 'Action',
+ operator: 'Operator',
+ operationTime: 'Operation Time',
+ add: 'Add',
+ delete: 'Delete',
+ modifyNew: 'Modify(New)',
+ modifyOld: 'Modify(Old)'
+ },
+ feeDetailOwner: {
+ ownerFace: 'Owner Face',
+ name: 'Name',
+ gender: 'Gender',
+ male: 'Male',
+ female: 'Female',
+ idCard: 'ID Card',
+ address: 'Address',
+ roomCount: 'Room Count',
+ memberCount: 'Member Count',
+ carCount: 'Car Count',
+ complaintCount: 'Complaint',
+ repairCount: 'Repair',
+ oweFee: 'Owe Fee',
+ contractCount: 'Contract'
+ },
+ feeDetailMeter: {
+ meterId: 'Meter ID',
+ meterType: 'Meter Type',
+ objName: 'Object Name',
+ preDegrees: 'Previous Degree',
+ curDegrees: 'Current Degree',
+ preReadingTime: 'Previous Reading Time',
+ curReadingTime: 'Current Reading Time',
+ createTime: 'Create Time'
+ },
+ feeDetailImport: {
+ floorNum: 'Building No.',
+ unitNum: 'Unit No.',
+ roomNum: 'Room No.',
+ feeName: 'Fee Name',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ totalAmount: 'Total Amount',
+ remark: 'Remark',
+ status: 'Status',
+ importSuccess: 'Import Success',
+ importFailed: 'Import Failed'
+ },
+ feeDetailDiscount: {
+ roomName: 'Room(Building-Unit-Room)',
+ discountId: 'Discount ID',
+ discountName: 'Discount Name',
+ applyType: 'Apply Type',
+ applicant: 'Applicant',
+ applicantPhone: 'Applicant Phone',
+ startTime: 'Start Time',
+ endTime: 'End Time',
+ status: 'Status',
+ createTime: 'Create Time',
+ useStatus: 'Use Status',
+ notUsed: 'Not Used',
+ used: 'Used',
+ returnType: 'Return Type',
+ accountBalance: 'Account Balance',
+ discount: 'Discount',
+ returnAmount: 'Return Amount'
+ },
+ feeDetailReceipt: {
+ print: 'Print',
+ printSmall: 'Print Small',
+ printApply: 'Print Apply',
+ feeType: 'Fee Type',
+ owner: 'Owner',
+ feeItem: 'Fee Item',
+ feePeriod: 'Fee Period',
+ totalAmount: 'Total Amount',
+ paymentTime: 'Payment Time',
+ receiptId: 'Receipt ID',
+ yuan: 'Yuan',
+ selectPrintReceipt: 'Please select receipt to print',
+ selectPrintApply: 'Please select'
+ },
+ mergeFee: {
+ confirmOperation: 'Please confirm your operation!',
+ mergeDescription: 'Merge split fees. After merging, the split fees will be ended and the original fee will be enabled',
+ cancel: 'Cancel',
+ confirmMerge: 'Confirm Merge',
+ mergeSuccess: 'Merge successful, please check the merged fee in business processing'
+ },
+ mergeFeeDemo: {
+ openComponent: 'Open Merge Fee Component',
+ mergeSuccess: 'Merge operation completed successfully'
+ },
+ feeDetailSub: {
+ split: 'Split',
+ parentFeeId: 'Parent Fee ID',
+ childFeeId: 'Child Fee ID',
+ feeName: 'Fee Name',
+ feeObject: 'Fee Object',
+ billingPeriod: 'Billing Period',
+ splitTime: 'Split Time',
+ operation: 'Operation',
+ restoreMerge: 'Restore Merge'
+ },
+ feeDetailSubDemo: {
+ openComponent: 'Open Fee Detail Sub Component'
+ }
+ },
+ zh: {
+ feeDetail: {
+ title: '费用信息',
+ feeId: '费用ID:',
+ feeFlag: '费用标识:',
+ feeType: '费用类型:',
+ payerObj: '付费对象:',
+ feeItem: '费用项:',
+ feeStatus: '费用状态:',
+ createTime: '建账时间:',
+ batchId: '批次:',
+ startTime: '应收开始时间:',
+ endTime: '应收结束时间:',
+ owedAmount: '欠费金额:',
+ paymentRecord: '缴费记录',
+ monthlyView: '按月展示',
+ relatedRoom: '关联房屋',
+ relatedCar: '关联车辆',
+ relatedContract: '关联合同',
+ modificationRecord: '修改记录',
+ owner: '业主',
+ sameFeeObj: '同费用对象',
+ relatedMeter: '关联抄表',
+ relatedImport: '关联导入',
+ discountApply: '优惠申请',
+ reprintReceipt: '补打收据',
+ feeSplit: '费用拆分',
+ billRule: '账单规则',
+ feeBill: '费用账单'
+ },
+ feeDetailHisFee: {
+ feeName: '费用项',
+ payerObjName: '收费对象',
+ cycles: '周期(单位:月)',
+ amount: '应收/实收(单位:元)',
+ paymentMethod: '缴费方式',
+ paymentPeriod: '缴费起始段',
+ paymentTime: '缴费时间',
+ cashier: '收银员',
+ status: '状态',
+ remark: '备注',
+ operation: '操作',
+ detail: '详情',
+ accountDeduction: '账户扣款'
+ },
+ feeDetailHisFeeDemo: {
+ openComponent: '打开历史费用详情'
+ },
+ feeDetailMonthFee: {
+ feeItem: '费用项目',
+ feeFlag: '费用标识',
+ feeType: '费用类型',
+ chargeYearMonth: '收费年月',
+ receivableAmount: '应收金额',
+ description: '说明',
+ lastDegrees: '上期度数:',
+ currentDegrees: '本期度数:',
+ unitPrice: '单价:',
+ additionalFee: '附加费:',
+ usage: '用量:',
+ algorithm: '算法:',
+ fixedFee: '固定费:'
+ },
+ feeDetailMonthFeeDemo: {
+ openComponent: '打开月度费用详情'
+ },
+ feeDetailRoom: {
+ roomId: '房屋ID',
+ floor: '楼层',
+ type: '类型',
+ area: '建筑/室内面积',
+ rent: '租金',
+ roomStatus: '房屋状态',
+ roomArrears: '房屋欠费',
+ operation: '操作',
+ businessAcceptance: '业务受理',
+ updateDaily: '按天更新',
+ searchPlaceholder: '请输入房屋编号 楼栋-单元-房屋 如1-1-1'
+ },
+ feeDetailRoomDemo: {
+ openComponent: '打开房屋详情'
+ },
+ feeDetailCar: {
+ licensePlate: '车牌号',
+ licenseType: '车牌类型',
+ carType: '车辆类型',
+ color: '颜色',
+ owner: '业主',
+ parkingSpace: '车位',
+ validityPeriod: '有效期',
+ temporaryCar: '临时车',
+ parkingLot: '车场',
+ spaceReleased: '车位已释放'
+ },
+ feeDetailCarDemo: {
+ openComponent: '打开车辆详情'
+ },
+ feeDetailContract: {
+ contractName: '合同名称',
+ contractCode: '合同编号',
+ parentContractCode: '父合同编号',
+ contractType: '合同类型',
+ operator: '经办人',
+ contractAmount: '合同金额',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ draftTime: '起草时间',
+ status: '状态'
+ },
+ feeDetailContractDemo: {
+ openComponent: '打开合同详情'
+ },
+ feeDetailConfig: {
+ feeType: '费用类型',
+ feeItem: '收费项目',
+ feeFlag: '费用标识',
+ reminderType: '催缴类型',
+ paymentType: '付费类型',
+ paymentCycle: '缴费周期',
+ unit: '单位',
+ formula: '公式',
+ unitPrice: '计费单价',
+ additionalFee: '附加/固定费用',
+ accountDeduction: '账户抵扣',
+ mobilePayment: '手机缴费',
+ decimalPlaces: '保留小数位',
+ prepaid: '预付费',
+ postpaid: '后付费',
+ yes: '是',
+ no: '否'
+ },
+ feeDetailConfigDemo: {
+ openComponent: '打开配置详情'
+ },
+ feeDetailHis: {
+ feeName: '费用项',
+ startTime: '建账时间',
+ endTime: '计费起始时间',
+ operation: '动作',
+ operator: '操作人',
+ operationTime: '操作时间',
+ add: '添加',
+ delete: '删除',
+ modifyNew: '修改(新)',
+ modifyOld: '修改(旧)'
+ },
+ feeDetailOwner: {
+ ownerFace: '业主人脸',
+ name: '姓名',
+ gender: '性别',
+ male: '男',
+ female: '女',
+ idCard: '身份证',
+ address: '家庭住址',
+ roomCount: '房屋数',
+ memberCount: '业主成员',
+ carCount: '车辆数',
+ complaintCount: '投诉',
+ repairCount: '报修',
+ oweFee: '欠费',
+ contractCount: '业主合同'
+ },
+ feeDetailMeter: {
+ meterId: '表ID',
+ meterType: '表类型',
+ objName: '对象名称',
+ preDegrees: '上期度数',
+ curDegrees: '本期度数',
+ preReadingTime: '上期读表时间',
+ curReadingTime: '本期读表时间',
+ createTime: '创建时间'
+ },
+ feeDetailImport: {
+ floorNum: '楼栋编号',
+ unitNum: '单元编号',
+ roomNum: '房屋编号',
+ feeName: '费用名称',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ totalAmount: '总金额',
+ remark: '备注',
+ status: '状态',
+ importSuccess: '导入成功',
+ importFailed: '导入失败'
+ },
+ feeDetailDiscount: {
+ roomName: '房屋(楼栋-单元-房屋)',
+ discountId: '折扣ID',
+ discountName: '折扣名称',
+ applyType: '申请类型',
+ applicant: '申请人',
+ applicantPhone: '申请电话',
+ startTime: '开始时间',
+ endTime: '结束时间',
+ status: '状态',
+ createTime: '创建时间',
+ useStatus: '使用状态',
+ notUsed: '未使用',
+ used: '已使用',
+ returnType: '返还类型',
+ accountBalance: '账户余额',
+ discount: '折扣',
+ returnAmount: '返还金额'
+ },
+ feeDetailReceipt: {
+ print: '打印',
+ printSmall: '打印小票',
+ printApply: '申请单',
+ feeType: '费用类型',
+ owner: '业主',
+ feeItem: '费用项目',
+ feePeriod: '收费时间段',
+ totalAmount: '总金额',
+ paymentTime: '缴费时间',
+ receiptId: '收据ID',
+ yuan: '元',
+ selectPrintReceipt: '请选择打印收据',
+ selectPrintApply: '请选择'
+ },
+ mergeFee: {
+ confirmOperation: '请确认您的操作!',
+ mergeDescription: '合并拆分费用,合并后,将结束拆分后的费用,启用原费用',
+ cancel: '点错了',
+ confirmMerge: '确认合并',
+ mergeSuccess: '合并成功,请到业务受理查看合并后费用'
+ },
+ mergeFeeDemo: {
+ openComponent: '打开合并费用组件',
+ mergeSuccess: '合并操作成功完成'
+ },
+ feeDetailSub: {
+ split: '拆分',
+ parentFeeId: '父费用ID',
+ childFeeId: '子费用ID',
+ feeName: '费用名称',
+ feeObject: '费用对象',
+ billingPeriod: '计费时间段',
+ splitTime: '拆分时间',
+ operation: '操作',
+ restoreMerge: '恢复合并'
+ },
+ feeDetailSubDemo: {
+ openComponent: '打开费用子详情组件'
+ }
+ }
+}
diff --git a/src/views/fee/feeDetailMeterLang.js b/src/views/fee/feeDetailMeterLang.js
new file mode 100644
index 0000000..1cf7114
--- /dev/null
+++ b/src/views/fee/feeDetailMeterLang.js
@@ -0,0 +1,26 @@
+export const messages = {
+ en: {
+ feeDetailMeter: {
+ meterId: 'Meter ID',
+ meterType: 'Meter Type',
+ objName: 'Object Name',
+ preDegrees: 'Previous Degree',
+ curDegrees: 'Current Degree',
+ preReadingTime: 'Previous Reading Time',
+ curReadingTime: 'Current Reading Time',
+ createTime: 'Create Time'
+ }
+ },
+ zh: {
+ feeDetailMeter: {
+ meterId: '表ID',
+ meterType: '表类型',
+ objName: '对象名称',
+ preDegrees: '上期度数',
+ curDegrees: '本期度数',
+ preReadingTime: '上期读表时间',
+ curReadingTime: '本期读表时间',
+ createTime: '创建时间'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailMonthFeeLang.js b/src/views/fee/feeDetailMonthFeeLang.js
new file mode 100644
index 0000000..de2936f
--- /dev/null
+++ b/src/views/fee/feeDetailMonthFeeLang.js
@@ -0,0 +1,42 @@
+export const messages = {
+ en: {
+ feeDetailMonthFee: {
+ feeItem: 'Fee Item',
+ feeFlag: 'Fee Flag',
+ feeType: 'Fee Type',
+ chargeYearMonth: 'Charge Year-Month',
+ receivableAmount: 'Receivable Amount',
+ description: 'Description',
+ lastDegrees: 'Last Degrees:',
+ currentDegrees: 'Current Degrees:',
+ unitPrice: 'Unit Price:',
+ additionalFee: 'Additional Fee:',
+ usage: 'Usage:',
+ algorithm: 'Algorithm:',
+ fixedFee: 'Fixed Fee:'
+ },
+ feeDetailMonthFeeDemo: {
+ openComponent: 'Open Month Fee Detail'
+ }
+ },
+ zh: {
+ feeDetailMonthFee: {
+ feeItem: '费用项目',
+ feeFlag: '费用标识',
+ feeType: '费用类型',
+ chargeYearMonth: '收费年月',
+ receivableAmount: '应收金额',
+ description: '说明',
+ lastDegrees: '上期度数:',
+ currentDegrees: '本期度数:',
+ unitPrice: '单价:',
+ additionalFee: '附加费:',
+ usage: '用量:',
+ algorithm: '算法:',
+ fixedFee: '固定费:'
+ },
+ feeDetailMonthFeeDemo: {
+ openComponent: '打开月度费用详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailOwnerLang.js b/src/views/fee/feeDetailOwnerLang.js
new file mode 100644
index 0000000..d35c098
--- /dev/null
+++ b/src/views/fee/feeDetailOwnerLang.js
@@ -0,0 +1,38 @@
+export const messages = {
+ en: {
+ feeDetailOwner: {
+ ownerFace: 'Owner Face',
+ name: 'Name',
+ gender: 'Gender',
+ male: 'Male',
+ female: 'Female',
+ idCard: 'ID Card',
+ address: 'Address',
+ roomCount: 'Room Count',
+ memberCount: 'Member Count',
+ carCount: 'Car Count',
+ complaintCount: 'Complaint',
+ repairCount: 'Repair',
+ oweFee: 'Owe Fee',
+ contractCount: 'Contract'
+ }
+ },
+ zh: {
+ feeDetailOwner: {
+ ownerFace: '业主人脸',
+ name: '姓名',
+ gender: '性别',
+ male: '男',
+ female: '女',
+ idCard: '身份证',
+ address: '家庭住址',
+ roomCount: '房屋数',
+ memberCount: '业主成员',
+ carCount: '车辆数',
+ complaintCount: '投诉',
+ repairCount: '报修',
+ oweFee: '欠费',
+ contractCount: '业主合同'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailReceiptLang.js b/src/views/fee/feeDetailReceiptLang.js
new file mode 100644
index 0000000..f9a0442
--- /dev/null
+++ b/src/views/fee/feeDetailReceiptLang.js
@@ -0,0 +1,36 @@
+export const messages = {
+ en: {
+ feeDetailReceipt: {
+ print: 'Print',
+ printSmall: 'Print Small',
+ printApply: 'Print Apply',
+ feeType: 'Fee Type',
+ owner: 'Owner',
+ feeItem: 'Fee Item',
+ feePeriod: 'Fee Period',
+ totalAmount: 'Total Amount',
+ paymentTime: 'Payment Time',
+ receiptId: 'Receipt ID',
+ yuan: 'Yuan',
+ selectPrintReceipt: 'Please select receipt to print',
+ selectPrintApply: 'Please select'
+ }
+ },
+ zh: {
+ feeDetailReceipt: {
+ print: '打印',
+ printSmall: '打印小票',
+ printApply: '申请单',
+ feeType: '费用类型',
+ owner: '业主',
+ feeItem: '费用项目',
+ feePeriod: '收费时间段',
+ totalAmount: '总金额',
+ paymentTime: '缴费时间',
+ receiptId: '收据ID',
+ yuan: '元',
+ selectPrintReceipt: '请选择打印收据',
+ selectPrintApply: '请选择'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailRoomLang.js b/src/views/fee/feeDetailRoomLang.js
new file mode 100644
index 0000000..156ddf6
--- /dev/null
+++ b/src/views/fee/feeDetailRoomLang.js
@@ -0,0 +1,38 @@
+export const messages = {
+ en: {
+ feeDetailRoom: {
+ roomId: 'Room ID',
+ floor: 'Floor',
+ type: 'Type',
+ area: 'Built-up/Indoor Area',
+ rent: 'Rent',
+ roomStatus: 'Room Status',
+ roomArrears: 'Room Arrears',
+ operation: 'Operation',
+ businessAcceptance: 'Business Acceptance',
+ updateDaily: 'Updated Daily',
+ searchPlaceholder: 'Please enter room number like 1-1-1'
+ },
+ feeDetailRoomDemo: {
+ openComponent: 'Open Room Detail'
+ }
+ },
+ zh: {
+ feeDetailRoom: {
+ roomId: '房屋ID',
+ floor: '楼层',
+ type: '类型',
+ area: '建筑/室内面积',
+ rent: '租金',
+ roomStatus: '房屋状态',
+ roomArrears: '房屋欠费',
+ operation: '操作',
+ businessAcceptance: '业务受理',
+ updateDaily: '按天更新',
+ searchPlaceholder: '请输入房屋编号 楼栋-单元-房屋 如1-1-1'
+ },
+ feeDetailRoomDemo: {
+ openComponent: '打开房屋详情'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeDetailSubLang.js b/src/views/fee/feeDetailSubLang.js
new file mode 100644
index 0000000..6aa27bd
--- /dev/null
+++ b/src/views/fee/feeDetailSubLang.js
@@ -0,0 +1,34 @@
+export const messages = {
+ en: {
+ feeDetailSub: {
+ split: 'Split',
+ parentFeeId: 'Parent Fee ID',
+ childFeeId: 'Child Fee ID',
+ feeName: 'Fee Name',
+ feeObject: 'Fee Object',
+ billingPeriod: 'Billing Period',
+ splitTime: 'Split Time',
+ operation: 'Operation',
+ restoreMerge: 'Restore Merge'
+ },
+ feeDetailSubDemo: {
+ openComponent: 'Open Fee Detail Sub Component'
+ }
+ },
+ zh: {
+ feeDetailSub: {
+ split: '拆分',
+ parentFeeId: '父费用ID',
+ childFeeId: '子费用ID',
+ feeName: '费用名称',
+ feeObject: '费用对象',
+ billingPeriod: '计费时间段',
+ splitTime: '拆分时间',
+ operation: '操作',
+ restoreMerge: '恢复合并'
+ },
+ feeDetailSubDemo: {
+ openComponent: '打开费用子详情组件'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/mergeFeeLang.js b/src/views/fee/mergeFeeLang.js
new file mode 100644
index 0000000..003a96a
--- /dev/null
+++ b/src/views/fee/mergeFeeLang.js
@@ -0,0 +1,28 @@
+export const messages = {
+ en: {
+ mergeFee: {
+ confirmOperation: 'Please confirm your operation!',
+ mergeDescription: 'Merge split fees. After merging, the split fees will be ended and the original fee will be enabled',
+ cancel: 'Cancel',
+ confirmMerge: 'Confirm Merge',
+ mergeSuccess: 'Merge successful, please check the merged fee in business processing'
+ },
+ mergeFeeDemo: {
+ openComponent: 'Open Merge Fee Component',
+ mergeSuccess: 'Merge operation completed successfully'
+ }
+ },
+ zh: {
+ mergeFee: {
+ confirmOperation: '请确认您的操作!',
+ mergeDescription: '合并拆分费用,合并后,将结束拆分后的费用,启用原费用',
+ cancel: '点错了',
+ confirmMerge: '确认合并',
+ mergeSuccess: '合并成功,请到业务受理查看合并后费用'
+ },
+ mergeFeeDemo: {
+ openComponent: '打开合并费用组件',
+ mergeSuccess: '合并操作成功完成'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/room/propertyRightRegistrationManageList.vue b/src/views/room/propertyRightRegistrationManageList.vue
index 05c4c4b..520e133 100644
--- a/src/views/room/propertyRightRegistrationManageList.vue
+++ b/src/views/room/propertyRightRegistrationManageList.vue
@@ -128,7 +128,7 @@
import { getDict } from '@/api/community/communityApi'
import { getCommunityId } from '@/api/community/communityApi'
import { listPropertyRightRegistration } from '@/api/room/propertyRightRegistrationManageApi'
-import { queryFloors, queryUnits } from '@/api/room/roomApi'
+import { getFloors, getUnits } from '@/api/room/roomApi'
import AddPropertyRightRegistration from '@/components/room/addPropertyRightRegistration'
import ExaminePropertyRightRegistration from '@/components/room/examinePropertyRightRegistration'
import EditPropertyRightRegistration from '@/components/room/editPropertyRightRegistration'
@@ -221,7 +221,7 @@ export default {
page: 1,
row: 50
}
- const data = await queryFloors(params)
+ const data = await getFloors(params)
this.floors = data.apiFloorDataVoList || []
} catch (error) {
console.error('获取楼栋数据失败:', error)
@@ -235,7 +235,7 @@ export default {
page: 1,
row: 50
}
- const data = await queryUnits(params)
+ const data = await getUnits(params)
this.units = data || []
this.searchForm.unitId = ''
} catch (error) {