-
-
![]()
-
-
-
+
-
-
-
-
-
-
+
+
\ No newline at end of file
diff --git a/src/i18n/feeI18n.js b/src/i18n/feeI18n.js
index 98785bf..3f97d0f 100644
--- a/src/i18n/feeI18n.js
+++ b/src/i18n/feeI18n.js
@@ -5,6 +5,11 @@ import { messages as returnPayFeeManageMessages } from '../views/fee/returnPayFe
import { messages as feeDiscountManageMessages } from '../views/fee/feeDiscountManageLang'
import { messages as applyRoomDiscountManageMessages } from '../views/fee/applyRoomDiscountManageLang'
import { messages as discountTypeMessages } from '../views/fee/discountTypeLang'
+import { messages as listApplyRoomDiscountRecordMessages } from '../views/fee/listApplyRoomDiscountRecordLang'
+import { messages as feeReceiptMessages } from '../views/fee/feeReceiptLang'
+import { messages as printPayFeeMessages } from '../views/fee/printPayFeeLang'
+import { messages as printPayFeeBangTaiMessages } from '../views/fee/printPayFeeBangTaiLang'
+import { messages as printSmallPayFeeMessages } from '../views/fee/printSmallPayFeeLang'
export const messages = {
en: {
@@ -15,6 +20,11 @@ export const messages = {
...feeDiscountManageMessages.en,
...applyRoomDiscountManageMessages.en,
...discountTypeMessages.en,
+ ...listApplyRoomDiscountRecordMessages.en,
+ ...feeReceiptMessages.en,
+ ...printPayFeeMessages.en,
+ ...printPayFeeBangTaiMessages.en,
+ ...printSmallPayFeeMessages.en,
},
zh: {
...contractCreateFeeMessages.zh,
@@ -24,5 +34,10 @@ export const messages = {
...feeDiscountManageMessages.zh,
...applyRoomDiscountManageMessages.zh,
...discountTypeMessages.zh,
+ ...listApplyRoomDiscountRecordMessages.zh,
+ ...feeReceiptMessages.zh,
+ ...printPayFeeMessages.zh,
+ ...printPayFeeBangTaiMessages.zh,
+ ...printSmallPayFeeMessages.zh,
}
}
\ No newline at end of file
diff --git a/src/router/feeRouter.js b/src/router/feeRouter.js
index 33c8f00..34f0c91 100644
--- a/src/router/feeRouter.js
+++ b/src/router/feeRouter.js
@@ -30,8 +30,19 @@ export default [
component: () => import('@/views/fee/applyRoomDiscountManageList.vue')
},
{
- path:'/views/fee/discountType',
- name:'/views/fee/discountType',
+ path: '/views/fee/discountType',
+ name: '/views/fee/discountType',
component: () => import('@/views/fee/discountTypeList.vue')
- },
+ },
+ {
+ path: '/views/fee/listApplyRoomDiscountRecord',
+ name: '/views/fee/listApplyRoomDiscountRecord',
+ component: () => import('@/views/fee/listApplyRoomDiscountRecordList.vue')
+ },
+ {
+ path: '/pages/property/feeReceipt',
+ name: '/pages/property/feeReceipt',
+ component: () => import('@/views/fee/feeReceiptList.vue')
+ },
+
]
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index 2b0bf14..5b410d6 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -15,7 +15,7 @@ import scmRouter from './scmRouter'
import userRouter from './userRouter'
import systemRouter from './systemRouter'
import communityRouter from './communityRouter'
-import workRouter from './workRouter'
+import workRouter from './workRouter'
import feeRouter from './feeRouter'
Vue.use(VueRouter)
@@ -31,13 +31,13 @@ const routes = [
name: '/views/index/index',
component: () => import('@/views/index/index.vue')
},
-
+
{
path: '/pages/frame/changeStaffPwd',
name: '/pages/frame/changeStaffPwd',
component: () => import('@/views/user/login/updatePwd.vue')
},
-
+
{
path: '/pages/frame/orgManage',
@@ -68,7 +68,7 @@ const routes = [
component: () => import('@/views/staff/staffDetailList.vue')
},
-
+
{
path: '/pages/log/mqttLog',
name: '/pages/log/mqttLog',
@@ -84,7 +84,7 @@ const routes = [
name: '/pages/frame/registerProtocol',
component: () => import('@/views/system/registerProtocolList.vue')
},
-
+
{
path: '/views/report/reportCustomComponentRelManage',
name: '/views/report/reportCustomComponentRelManage',
@@ -100,7 +100,7 @@ const routes = [
name: '/views/report/reportCustomComponentFooterManage',
component: () => import('@/views/report/reportCustomComponentFooterManageList.vue')
},
-
+
{
path: '/pages/common/communityManage',
name: '/pages/common/communityManage',
@@ -166,7 +166,7 @@ const routes = [
name: '/pages/owner/adminOwner',
component: () => import('@/views/owner/adminOwnerList.vue')
},
-
+
{
path: '/pages/owner/adminAuthOwner',
name: '/pages/owner/adminAuthOwner',
@@ -187,7 +187,7 @@ const routes = [
name: '/pages/fee/adminFeeConfig',
component: () => import('@/views/fee/adminFeeConfigList.vue')
},
-
+
{
path: '/pages/fee/adminRoomFee',
name: '/pages/fee/adminRoomFee',
@@ -566,7 +566,7 @@ const routes = [
name: '/views/fee/feeConfigDetail',
component: () => import('@/views/fee/feeConfigDetailList.vue')
},
-
+
{
path: '/pages/property/carCreateFee',
name: '/pages/property/carCreateFee',
@@ -621,7 +621,7 @@ const routes = [
path: '/pages/property/repairForceFinishManage',
name: '/pages/property/repairForceFinishManage',
component: () => import('@/views/work/repairForceFinishManageList.vue')
- },
+ },
{
path: '/pages/property/locationManage',
name: '/pages/property/locationManage',
@@ -679,6 +679,21 @@ const routes = [
name: '/views/contract/printContract',
component: () => import('@/views/contract/printContractList.vue')
},
+ {
+ path: '/pages/property/printPayFee',
+ name: '/pages/property/printPayFee',
+ component: () => import('@/views/fee/printPayFeeList.vue')
+ },
+ {
+ path: '/pages/property/printPayFeeBangTai',
+ name: '/pages/property/printPayFeeBangTai',
+ component: () => import('@/views/fee/printPayFeeBangTaiList.vue')
+ },
+ {
+ path:'/pages/property/printSmallPayFee',
+ name:'/pages/property/printSmallPayFee',
+ component: () => import('@/views/fee/printSmallPayFeeList.vue')
+ },
]
const router = new VueRouter({
diff --git a/src/views/fee/applyRoomDiscountManageList.vue b/src/views/fee/applyRoomDiscountManageList.vue
index c8753de..cebbc91 100644
--- a/src/views/fee/applyRoomDiscountManageList.vue
+++ b/src/views/fee/applyRoomDiscountManageList.vue
@@ -231,7 +231,7 @@ export default {
},
handleOpenRecord(row) {
this.$router.push({
- path: '/pages/property/listApplyRoomDiscountRecord',
+ path: '/views/fee/listApplyRoomDiscountRecord',
query: {
ardId: row.ardId,
roomId: row.roomId,
diff --git a/src/views/fee/discountTypeLang.js b/src/views/fee/discountTypeLang.js
index abcedba..1df2288 100644
--- a/src/views/fee/discountTypeLang.js
+++ b/src/views/fee/discountTypeLang.js
@@ -43,16 +43,6 @@ export const messages = {
},
fetchError: 'Failed to fetch discount types'
},
- common: {
- search: 'Search',
- add: 'Add',
- edit: 'Edit',
- delete: 'Delete',
- back: 'Back',
- cancel: 'Cancel',
- confirm: 'Confirm',
- operation: 'Operation'
- }
},
zh: {
discountType: {
@@ -98,15 +88,5 @@ export const messages = {
},
fetchError: '获取优惠类型失败'
},
- common: {
- search: '查询',
- add: '添加',
- edit: '修改',
- delete: '删除',
- back: '返回',
- cancel: '取消',
- confirm: '确认',
- operation: '操作'
- }
}
}
\ No newline at end of file
diff --git a/src/views/fee/feeReceiptLang.js b/src/views/fee/feeReceiptLang.js
new file mode 100644
index 0000000..ff53057
--- /dev/null
+++ b/src/views/fee/feeReceiptLang.js
@@ -0,0 +1,70 @@
+export const messages = {
+ en: {
+ feeReceipt: {
+ search: {
+ title: 'Search Conditions',
+ receiptId: 'Please enter receipt ID',
+ roomId: 'Please enter room/carport info, format: building-unit-room, e.g. 1-1-1',
+ objType: 'Please select fee type',
+ all: 'All',
+ houseFee: 'House Fee',
+ parkingFee: 'Parking Fee',
+ startTime: 'Please select start time',
+ endTime: 'Please select end time'
+ },
+ list: {
+ title: 'Receipt Information'
+ },
+ table: {
+ receiptId: 'Receipt ID',
+ receiptCode: 'Receipt Code',
+ objType: 'Fee Type',
+ feeName: 'Fee Item',
+ roomName: 'Room',
+ payObjName: 'Owner',
+ carNum: 'Carport',
+ amount: 'Total Amount(¥)',
+ createTime: 'Payment Time'
+ },
+ button: {
+ reprint: 'Reprint Receipt',
+ reprintSmall: 'Reprint Small Receipt'
+ },
+ fetchError: 'Failed to fetch receipt data'
+ }
+ },
+ zh: {
+ feeReceipt: {
+ search: {
+ title: '查询条件',
+ receiptId: '请输入收据ID',
+ roomId: '请输入房屋或车位信息,格式为楼栋-单元-房屋,如1-1-1',
+ objType: '请选择收费类型',
+ all: '全部',
+ houseFee: '房屋费',
+ parkingFee: '车位费',
+ startTime: '请选择开始时间',
+ endTime: '请选择结束时间'
+ },
+ list: {
+ title: '收据信息'
+ },
+ table: {
+ receiptId: '收据ID',
+ receiptCode: '收据编号',
+ objType: '费用类型',
+ feeName: '费用项',
+ roomName: '房屋',
+ payObjName: '业主',
+ carNum: '车位',
+ amount: '总金额(单位:元)',
+ createTime: '缴费时间'
+ },
+ button: {
+ reprint: '补打收据',
+ reprintSmall: '补打小票'
+ },
+ fetchError: '获取收据数据失败'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/feeReceiptList.vue b/src/views/fee/feeReceiptList.vue
new file mode 100644
index 0000000..25136bd
--- /dev/null
+++ b/src/views/fee/feeReceiptList.vue
@@ -0,0 +1,223 @@
+
+
+
+
+
+ {{ $t('feeReceipt.search.title') }}
+
+ {{ feeReceiptManageInfo.moreCondition ? $t('common.hide') : $t('common.more') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('common.search') }}
+
+
+
+ {{ $t('common.reset') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('feeReceipt.list.title') }}
+
+
+
+
+
+
+ {{ scope.row.receiptCode || '-' }}
+
+
+
+
+ {{ scope.row.objType === '3333' ? $t('feeReceipt.search.houseFee') : $t('feeReceipt.search.parkingFee') }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('feeReceipt.button.reprint') }}
+
+
+ {{ $t('feeReceipt.button.reprintSmall') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/fee/listApplyRoomDiscountRecordLang.js b/src/views/fee/listApplyRoomDiscountRecordLang.js
new file mode 100644
index 0000000..5737571
--- /dev/null
+++ b/src/views/fee/listApplyRoomDiscountRecordLang.js
@@ -0,0 +1,84 @@
+export const messages = {
+ en: {
+ listApplyRoomDiscountRecord: {
+ title: 'Decoration Tracking Record',
+ id: 'ID',
+ room: 'Room',
+ operator: 'Operator',
+ createTime: 'Create Time',
+ status: 'Status',
+ isViolation: 'Is Violation',
+ remark: 'Remark',
+ fetchError: 'Failed to fetch records'
+ },
+ applyRoomDiscountRecord: {
+ title: 'Inspection Tracking',
+ room: 'Room',
+ status: 'Status',
+ isViolation: 'Is Violation',
+ selectViolation: 'Please select violation status',
+ remark: 'Remark',
+ remarkPlaceholder: 'Please enter remarks',
+ uploadImages: 'Upload Images',
+ uploadVideo: 'Upload Video',
+ violationRequired: 'Violation status is required',
+ remarkRequired: 'Remark is required'
+ },
+ deleteApplyRoomDiscountRecord: {
+ title: 'Confirm Operation',
+ confirmText: 'Are you sure to delete this inspection record?'
+ },
+ uploadImage: {
+ maxCountError: 'Maximum {count} images can be uploaded',
+ sizeError: 'Image size cannot exceed 2MB',
+ uploadFailed: 'Image upload failed'
+ },
+ uploadVedio: {
+ uploadButton: 'Upload Video',
+ sizeError: 'Video size cannot exceed 500MB',
+ uploadSuccess: 'Video uploaded successfully',
+ uploadFailed: 'Video upload failed'
+ }
+ },
+ zh: {
+ listApplyRoomDiscountRecord: {
+ title: '装修跟踪记录',
+ id: 'ID',
+ room: '房屋',
+ operator: '操作人员',
+ createTime: '创建时间',
+ status: '状态',
+ isViolation: '是否违规',
+ remark: '备注',
+ fetchError: '获取记录失败'
+ },
+ applyRoomDiscountRecord: {
+ title: '验房跟踪',
+ room: '房屋',
+ status: '状态',
+ isViolation: '是否违规',
+ selectViolation: '请选择是否违规',
+ remark: '备注',
+ remarkPlaceholder: '请填写备注',
+ uploadImages: '上传图片',
+ uploadVideo: '上传视频',
+ violationRequired: '是否违规不能为空',
+ remarkRequired: '备注不能为空'
+ },
+ deleteApplyRoomDiscountRecord: {
+ title: '请确认您的操作',
+ confirmText: '确定删除验房记录吗?'
+ },
+ uploadImage: {
+ maxCountError: '最多只能上传{count}张图片',
+ sizeError: '图片大小不能超过2MB',
+ uploadFailed: '图片上传失败'
+ },
+ uploadVedio: {
+ uploadButton: '上传视频',
+ sizeError: '视频大小不能超过500MB',
+ uploadSuccess: '视频上传成功',
+ uploadFailed: '视频上传失败'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/listApplyRoomDiscountRecordList.vue b/src/views/fee/listApplyRoomDiscountRecordList.vue
new file mode 100644
index 0000000..de9a343
--- /dev/null
+++ b/src/views/fee/listApplyRoomDiscountRecordList.vue
@@ -0,0 +1,196 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('common.viewDetails') }}
+
+
+ {{ $t('common.delete') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/fee/printPayFeeBangTaiLang.js b/src/views/fee/printPayFeeBangTaiLang.js
new file mode 100644
index 0000000..eb841bf
--- /dev/null
+++ b/src/views/fee/printPayFeeBangTaiLang.js
@@ -0,0 +1,60 @@
+export const messages = {
+ en: {
+ printPayFeeBangTai: {
+ applyForm: 'Application Form',
+ receiptForm: 'Receipt Form',
+ receiptNum: 'Receipt No.',
+ owner: 'Owner: ',
+ paymentTime: 'Payment Time: ',
+ serialNum: 'No.',
+ feeItem: 'Fee Item',
+ houseCar: 'House/Car',
+ feeRange: 'Fee Range',
+ cycle: 'Cycle',
+ unitPrice: 'Unit Price/Fixed Fee',
+ areaUsage: 'Area/Usage',
+ paymentMethod: 'Payment Method',
+ amount: 'Amount',
+ discountAmount: 'Discount Amount',
+ remark: 'Remark',
+ to: ' to ',
+ none: 'None',
+ capitalRMB: 'Capital RMB',
+ departmentHead: 'Department Head',
+ handler: 'Handler',
+ financialCollection: 'Financial Collection',
+ customerConfirmation: 'Customer Confirmation',
+ print: 'Print',
+ cancel: 'Cancel'
+ }
+ },
+ zh: {
+ printPayFeeBangTai: {
+ applyForm: '申请单',
+ receiptForm: '收据单',
+ receiptNum: '单号',
+ owner: '业主:',
+ paymentTime: '缴费时间:',
+ serialNum: '编号',
+ feeItem: '收费项目',
+ houseCar: '房屋/车辆',
+ feeRange: '收费范围',
+ cycle: '周期',
+ unitPrice: '单价/固定费',
+ areaUsage: '面积/用量',
+ paymentMethod: '支付方式',
+ amount: '金额',
+ discountAmount: '优惠金额',
+ remark: '备注',
+ to: '至',
+ none: '无',
+ capitalRMB: '大写人民币',
+ departmentHead: '部门负责人',
+ handler: '经办人',
+ financialCollection: '财务收款',
+ customerConfirmation: '客户确认',
+ print: '打印',
+ cancel: '取消'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/printPayFeeBangTaiList.vue b/src/views/fee/printPayFeeBangTaiList.vue
new file mode 100644
index 0000000..fbd4c34
--- /dev/null
+++ b/src/views/fee/printPayFeeBangTaiList.vue
@@ -0,0 +1,303 @@
+
+
+
+
+
+
{{ printPayFeeInfo.communityName }} {{ printPayFeeInfo.apply ==
+ 'Y' ? $t('printPayFeeBangTai.applyForm') : $t('printPayFeeBangTai.receiptForm')}}
+
+ {{ $t('printPayFeeBangTai.receiptNum') }}:{{ printPayFeeInfo.receiptNum }}
+
+
+
+
+ {{ $t('printPayFeeBangTai.owner') }}{{ printPayFeeInfo.payObjName }}
+
+
+ {{ $t('printPayFeeBangTai.paymentTime') }}{{ printPayFeeInfo.feeTime }}
+
+
+
+
+
+ | {{ $t('printPayFeeBangTai.serialNum') }} |
+ {{ $t('printPayFeeBangTai.feeItem') }} |
+ {{ $t('printPayFeeBangTai.houseCar') }} |
+ {{ $t('printPayFeeBangTai.feeRange') }} |
+ {{ $t('printPayFeeBangTai.cycle') }} |
+ {{ $t('printPayFeeBangTai.unitPrice') }} |
+ {{ $t('printPayFeeBangTai.areaUsage') }} |
+ {{ $t('printPayFeeBangTai.paymentMethod') }} |
+ {{ $t('printPayFeeBangTai.amount') }} |
+ {{ $t('printPayFeeBangTai.discountAmount') }} |
+ {{ $t('printPayFeeBangTai.remark') }} |
+
+
+
+
+ | {{ index + 1 }} |
+ {{ item.feeName }} |
+ {{ item.objName }} |
+
+ {{ formatDate(item.startTime) }}{{ $t('printPayFeeBangTai.to') }}{{ formatDate(item.endTime) }}
+ {{ item.preDegrees }} {{ $t('printPayFeeBangTai.to') }} {{ item.curDegrees }}
+ |
+
+ {{ $t('printPayFeeBangTai.none') }}
+ |
+
+ {{ formatDate(item.startTime) }}{{ $t('printPayFeeBangTai.to') }}{{ formatDate(item.endTime) }}
+ |
+ {{ item.cycle }} |
+ {{ item.squarePrice }} |
+ {{ item.area }} |
+ {{ item.primeRate }} |
+ {{ item.amount }} |
+ {{ item.discountPrice }} |
+ {{ item.remark }} |
+
+
+ |
+ {{ $t('printPayFeeBangTai.capitalRMB') }}(元)
+ |
+ {{ changeNumMoneyToChinese(printPayFeeInfo.amount) }} |
+ {{ computeSumArea() }} |
+ {{ printPayFeeInfo.amount }} |
+
+
+ |
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+ {{ $t('printPayFeeBangTai.departmentHead') }}:
+
+
+ {{ $t('printPayFeeBangTai.handler') }}:{{ userInfo.name }}
+
+
+ {{ $t('printPayFeeBangTai.financialCollection') }}:
+
+
+ {{ $t('printPayFeeBangTai.customerConfirmation') }}:
+
+
+
+
+
+ {{ $t('printPayFeeBangTai.print') }}
+
+
+ {{ $t('printPayFeeBangTai.cancel') }}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/fee/printPayFeeLang.js b/src/views/fee/printPayFeeLang.js
new file mode 100644
index 0000000..e0d9c95
--- /dev/null
+++ b/src/views/fee/printPayFeeLang.js
@@ -0,0 +1,60 @@
+export const messages = {
+ en: {
+ printPayFee: {
+ apply: 'Application',
+ receipt: 'Receipt',
+ refund: 'Refund',
+ owner: 'Owner',
+ receiptNum: 'Receipt No.',
+ payTime: 'Payment Time',
+ serialNumber: 'No.',
+ feeItem: 'Fee Item',
+ houseCar: 'House/Vehicle',
+ feeRange: 'Fee Range',
+ to: 'to',
+ none: 'None',
+ unitPrice: 'Unit Price',
+ areaUsage: 'Area/Usage',
+ paymentMethod: 'Payment Method',
+ receivableActual: 'Receivable/Actual',
+ yuan: 'yuan',
+ discountAmount: 'Discount Amount',
+ remark: 'Remark',
+ capitalRMB: 'Capital RMB',
+ accountDeduction: 'Account Deduction',
+ departmentHead: 'Department Head:',
+ operator: 'Operator',
+ financeReceipt: 'Finance Receipt:',
+ customerConfirm: 'Customer Confirm:'
+ }
+ },
+ zh: {
+ printPayFee: {
+ apply: '申请单',
+ receipt: '收据单',
+ refund: '退款单',
+ owner: '业主',
+ receiptNum: '单号',
+ payTime: '缴费时间',
+ serialNumber: '编号',
+ feeItem: '收费项目',
+ houseCar: '房屋/车辆',
+ feeRange: '收费范围',
+ to: '至',
+ none: '无',
+ unitPrice: '单价',
+ areaUsage: '面积/用量',
+ paymentMethod: '支付方式',
+ receivableActual: '应收/实收',
+ yuan: '元',
+ discountAmount: '优惠金额',
+ remark: '备注',
+ capitalRMB: '大写人民币(元)',
+ accountDeduction: '账户扣款',
+ departmentHead: '部门负责人:',
+ operator: '经办人:',
+ financeReceipt: '财务收款:',
+ customerConfirm: '客户确认:'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/printPayFeeList.vue b/src/views/fee/printPayFeeList.vue
new file mode 100644
index 0000000..08e49bf
--- /dev/null
+++ b/src/views/fee/printPayFeeList.vue
@@ -0,0 +1,292 @@
+
+
+
+
+
{{ printPayFeeInfo.communityName }}
+ {{ $t('printPayFee.apply') }}
+ {{ $t('printPayFee.receipt') }}
+ {{ $t('printPayFee.refund') }}
+
+
+
+
+ {{ $t('printPayFee.owner') }}:{{ printPayFeeInfo.payObjName }}
+
+
+ {{ $t('printPayFee.receiptNum') }}{{ printPayFeeInfo.receiptNum }}
+
+ {{ $t('printPayFee.payTime') }}:{{ printPayFeeInfo.feeTime }}
+
+
+
+
+
+ {{ scope.$index + 1 }}
+
+
+
+
+
+
+
+ {{ dateFormat(scope.row.startTime) }}
+ {{ $t('printPayFee.to') }}
+ {{ dateFormat(scope.row.endTime) }}
+ {{ scope.row.preDegrees }} {{ $t('printPayFee.to') }} {{ scope.row.curDegrees }}
+
+
+ {{ $t('printPayFee.none') }}
+
+
+ {{ dateFormat(scope.row.startTime) }}{{ $t('printPayFee.to') }}{{ dateFormat(scope.row.endTime) }}
+
+
+
+
+
+ {{ scope.row.squarePrice }}
{{ scope.row.units }}
+
+
+
+
+
+
+ {{ scope.row.receivableAmount }}/{{ scope.row.amount }}{{ $t('printPayFee.yuan') }}
+ ({{ $t('printPayFee.refund') }})
+
+
+
+
+ {{ scope.row.discountPrice || 0 }}
+
+
+
+
+
+
+ {{ $t('printPayFee.capitalRMB') }}
+ {{ changeNumMoneyToChinese(printPayFeeInfo.amount) }}
+ {{ printPayFeeInfo.amount }}
+ {{ $t('printPayFee.accountDeduction') }}
+ {{ printPayFeeInfo.acctAmount }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('printPayFee.departmentHead') }}
+
+
+ {{ $t('printPayFee.operator') }}:{{ userInfo.name }}
+
+
+ {{ $t('printPayFee.financeReceipt') }}
+
+
+ {{ $t('printPayFee.customerConfirm') }}
+
+
+
+
+
+
+ {{ $t('common.print') }}
+
+
+ {{ $t('common.cancel') }}
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/fee/printSmallPayFeeLang.js b/src/views/fee/printSmallPayFeeLang.js
new file mode 100644
index 0000000..a21414a
--- /dev/null
+++ b/src/views/fee/printSmallPayFeeLang.js
@@ -0,0 +1,70 @@
+export const messages = {
+ en: {
+ printSmallPayFee: {
+ receipt: 'Payment Receipt',
+ receiptNum: 'Receipt No:',
+ orderNum: 'Order No:',
+ roomNum: 'Room No',
+ owner: 'Owner',
+ time: 'Time',
+ feeItem: 'Fee Item',
+ feeRange: 'Fee Range',
+ to: 'to',
+ unitPrice: 'Unit Price/Fixed Fee:',
+ areaUsage: 'Area/Usage:',
+ paymentMethod: 'Payment Method:',
+ meterReading: 'Meter Reading:',
+ amount: 'Amount:',
+ refund: '(Refund)',
+ discount: 'Discount Amount:',
+ remark: 'Remark',
+ total: 'Total',
+ issuer: 'Issuer',
+ print: 'Print',
+ cloudPrint: 'Cloud Print',
+ cancel: 'Cancel',
+ submit: 'Submit',
+ printer: 'Printer',
+ printerRequired: 'Required, please select printer',
+ quantity: 'Quantity',
+ quantityRequired: 'Required, please enter quantity',
+ noFee: 'No fee included',
+ submitSuccess: 'Submitted successfully',
+ submitFailed: 'Submission failed'
+ }
+ },
+ zh: {
+ printSmallPayFee: {
+ receipt: '缴费收据单',
+ receiptNum: '收据号:',
+ orderNum: '订单号:',
+ roomNum: '房号',
+ owner: '业主',
+ time: '时间',
+ feeItem: '收费项目',
+ feeRange: '收费范围',
+ to: '至',
+ unitPrice: '单价/固定费:',
+ areaUsage: '面积/用量:',
+ paymentMethod: '支付方式:',
+ meterReading: '表读数:',
+ amount: '金额:',
+ refund: '(退费)',
+ discount: '优惠金额:',
+ remark: '备注',
+ total: '总计',
+ issuer: '开票人',
+ print: '打印',
+ cloudPrint: '云打印',
+ cancel: '取消',
+ submit: '提交',
+ printer: '打印机',
+ printerRequired: '必填,请选择打印机',
+ quantity: '数量',
+ quantityRequired: '必填,请填写数量',
+ noFee: '未包含费用',
+ submitSuccess: '提交成功',
+ submitFailed: '提交失败'
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/views/fee/printSmallPayFeeList.vue b/src/views/fee/printSmallPayFeeList.vue
new file mode 100644
index 0000000..5aaa544
--- /dev/null
+++ b/src/views/fee/printSmallPayFeeList.vue
@@ -0,0 +1,318 @@
+
+
+
+
+
+ {{ $t('printSmallPayFee.receipt') }}
+
+
**************************
+
+
+ {{ $t('printSmallPayFee.receiptNum') }}{{ printSmallPayFeeInfo.receiptNum }}
+
+
+ {{ $t('printSmallPayFee.orderNum') }}{{ printSmallPayFeeInfo.payOrderId }}
+
+
+ {{ $t('printSmallPayFee.roomNum') }}: {{ printSmallPayFeeInfo.roomName }}
+
+
+ {{ $t('printSmallPayFee.owner') }}: {{ printSmallPayFeeInfo.payObjName }}
+
+
+ {{ $t('printSmallPayFee.time') }}: {{ printSmallPayFeeInfo.feeTime }}
+
+
+
**************************
+
+
+ {{ $t('printSmallPayFee.feeItem') }}: {{ item.feeName }}
+
+
+ {{ $t('printSmallPayFee.feeRange') }}: {{ formatDate(item.startTime) }}
+ {{ $t('printSmallPayFee.to') }}{{ formatDate(item.endTime) }}
+
+
+ {{ $t('printSmallPayFee.unitPrice') }}{{ item.squarePrice }}
+
+
+ {{ $t('printSmallPayFee.areaUsage') }}{{ item.area }}
+
+
+ {{ $t('printSmallPayFee.paymentMethod') }}{{ item.primeRate }}
+
+
+ {{ $t('printSmallPayFee.meterReading') }}{{ item.preDegrees }} {{ $t('printSmallPayFee.to') }}
+ {{ item.curDegrees }}
+
+
+ {{ $t('printSmallPayFee.amount') }}
+ {{ formatAmount(item.amount) }}
+
+
+ {{ $t('printSmallPayFee.discount') }} {{ item.discountPrice || 0 }}
+
+
+ {{ $t('printSmallPayFee.remark') }}: {{ item.remark }}
+
+
**************************
+
+
+
+ {{ $t('printSmallPayFee.total') }}: {{ printSmallPayFeeInfo.amount }}
+
+
+ {{ $t('printSmallPayFee.issuer') }}: {{ userInfo.name }}
+
+
+
+
+
**************************
+
+
+
+
+ {{ $t('printSmallPayFee.print') }}
+
+
+ {{ $t('printSmallPayFee.cloudPrint') }}
+
+
+ {{ $t('printSmallPayFee.cancel') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file