diff --git a/.eslintrc.js b/.eslintrc.js index ceb29c9..a986ff1 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -42,7 +42,8 @@ module.exports = { 'vue/singleline-html-element-content-newline': 0, 'vue/max-attributes-per-line': 0, // Vue: Add extra rules - 'vue/custom-event-name-casing': [2, 'camelCase'], + 'vue/custom-event-name-casing': [0, 'camelCase'], + 'camelcase': ['warn', { properties: 'never' }], 'vue/no-v-text': 1, 'vue/padding-line-between-blocks': 1, 'vue/require-direct-export': 1, diff --git a/src/api/setting.ts b/src/api/setting.ts index 3cedd26..5606fee 100644 --- a/src/api/setting.ts +++ b/src/api/setting.ts @@ -34,6 +34,9 @@ import { CreateFeeParams, FeeManagementDetailRes, FeeSelectListParams, + CreateTermSettingParam, + SettingContractTermListRes, + SettingContractTermInfo, } from '@/types/setting'; import { HttpResponse } from './interceptor'; @@ -338,13 +341,13 @@ export function getAllTermsSettingList(): Promise { } // 合同设置-合同条款设置-新增 export function createTermsSetting( - params: CreateCodeSettingParam + params: CreateTermSettingParam ): Promise { return axios.post(`contractSetting/createTermsSetting`, params); } // 合同设置-合同条款设置-编辑 export function updateTermsSetting( - params: CreateCodeSettingParam + params: CreateTermSettingParam ): Promise { return axios.post(`contractSetting/updateTermsSetting`, params); } @@ -355,7 +358,7 @@ export function delTermsSetting(id: number): Promise { // 合同设置-合同条款设置-单个详情 export function getTermsSettingFromId( id: number -): Promise { +): Promise { return axios.get(`contractSetting/getTermsSetting?id=${id}`); } // 合同设置-合同条款设置-启用/禁用 @@ -367,7 +370,7 @@ export function disableTermsSetting( // 合同设置-合同条款设置-列表(带分页) export function getTermsSettingList( params: PaginationParams -): Promise { +): Promise { return axios.post(`contractSetting/getTermsSettingList`, params); } diff --git a/src/types/setting.ts b/src/types/setting.ts index 77c1d22..9d4e737 100644 --- a/src/types/setting.ts +++ b/src/types/setting.ts @@ -273,10 +273,31 @@ export interface CreateFeeParams { is_bond: CommStatus; tax_rate: string; } +export interface CreateTermSettingParam { + id?: number; // id + name: string; // 名称 + type: FeeType; // 条款类型:1租赁类,2物业类,3特殊类,4其他类 + is_fee: CommStatus; // 是否勾选费项:1是,2否 + finance_fee_id: number | null; // 财务费项id(除保证金外 + finance_fee_periodicity: 1 | 2; // 周期性:1周期性付款,2一次性付款 + is_bond: CommStatus; // 是否勾选保证金:1是,2否 + finance_bond_fee_id: number | null; // 财务保证金费项id + is_incremental: CommStatus; // 是否勾选递增项:1是,2否 + is_discount: CommStatus; // 是否勾选优惠项:1是,2否 + is_late_fee: CommStatus; // 是否勾选滞纳金:1是,2否 +} +export interface TermSettingItem { + id: number; // id + name: string; // 条款名称 + type: string; // 条款类型 + feeStr: string; // 条款项 + status: string; // 状态:1 启用,2 禁用 +} + export interface FeeSelectListParams { fee_attribute: FeeManagementType; // 费项属性:1收入费项,2支出费项 fee_type: FeeType; // 费项类型:1租赁类,2物业类,3特殊类,4其他类 - is_bond: CommStatus; // 是否保证金:1是,2否 + is_bond?: CommStatus; // 是否保证金:1是,2否 } // ==================== 响应类型别名 ==================== export type DepartmentFormRes = HttpResponse; @@ -325,3 +346,10 @@ export type FeeManagementListRes = HttpResponse<{ export type FeeManagementDetailRes = HttpResponse<{ fee: FeeManagement; }>; +export type SettingContractTermListRes = HttpResponse<{ + contractTermsSetting: TermSettingItem[]; + page?: PaginationParams & PaginationResult; +}>; +export type SettingContractTermInfo = HttpResponse<{ + contractTermsSetting: TermSettingItem; +}>; diff --git a/src/utils/constant.ts b/src/utils/constant.ts new file mode 100644 index 0000000..5d42701 --- /dev/null +++ b/src/utils/constant.ts @@ -0,0 +1,11 @@ +export const feeTypeList = [ + { value: 1, label: '租赁类' }, + { value: 2, label: '物业类' }, + { value: 3, label: '特殊类' }, + { value: 4, label: '其他类' }, +]; +export const financeFeeFeriodicityList = [ + { value: 1, label: '周期性付款' }, + { value: 2, label: '一次性付款' }, +]; +export default {}; diff --git a/src/views/setting/system/contract-settings/contract-terms.vue b/src/views/setting/system/contract-settings/contract-terms.vue index 16eb641..b205a0f 100644 --- a/src/views/setting/system/contract-settings/contract-terms.vue +++ b/src/views/setting/system/contract-settings/contract-terms.vue @@ -21,9 +21,9 @@