diff --git a/apps/web-antd/src/api/common.d.ts b/apps/web-antd/src/api/common.d.ts index a2b1cdfb..575a4877 100644 --- a/apps/web-antd/src/api/common.d.ts +++ b/apps/web-antd/src/api/common.d.ts @@ -1,3 +1,5 @@ +import type { DataNode } from 'ant-design-vue/es/tree'; + export type ID = number | string; export type IDS = (number | string)[]; @@ -42,15 +44,12 @@ export interface PageQuery { [key: string]: any; } -export interface TreeNode { +export interface TreeNode extends DataNode { level: number; code: T; ParentCode: T; label: string; - children: TreeNode; - - title?: string; - key?:any - disabled: boolean + data?: []; + disabled: boolean; } diff --git a/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/index.ts b/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/index.ts new file mode 100644 index 00000000..2ed90e67 --- /dev/null +++ b/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/index.ts @@ -0,0 +1,61 @@ +import type { ShiftVO, ShiftForm, ShiftQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询班次表列表 +* @param params +* @returns 班次表列表 +*/ +export function shiftList(params?: ShiftQuery) { + return requestClient.get>('/Property/shift/list', { params }); +} + +/** + * 导出班次表列表 + * @param params + * @returns 班次表列表 + */ +export function shiftExport(params?: ShiftQuery) { + return commonExport('/Property/shift/export', params ?? {}); +} + +/** + * 查询班次表详情 + * @param id id + * @returns 班次表详情 + */ +export function shiftInfo(id: ID) { + return requestClient.get(`/Property/shift/${id}`); +} + +/** + * 新增班次表 + * @param data + * @returns void + */ +export function shiftAdd(data: ShiftForm) { + return requestClient.postWithMsg('/Property/shift', data); +} + +/** + * 更新班次表 + * @param data + * @returns void + */ +export function shiftUpdate(data: ShiftForm) { + return requestClient.putWithMsg('/Property/shift', data); +} + +/** + * 删除班次表 + * @param id id + * @returns void + */ +export function shiftRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/Property/shift/${id}`); +} diff --git a/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/model.d.ts b/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/model.d.ts new file mode 100644 index 00000000..76332c84 --- /dev/null +++ b/apps/web-antd/src/api/property/attendanceManagement/shiftSetting/model.d.ts @@ -0,0 +1,129 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface ShiftVO { + /** + * 主键id + */ + id: string | number; + + /** + * 班次名称 + */ + name: string; + + /** + * 考勤开始时间 + */ + startTime: string; + + /** + * 考勤结束时间 + */ + endTime: string; + + /** + * 状态(0:off,1:on) + */ + status: number; + + /** + * 是否休息(0:不休息,1:休息) + */ + isRest: number; + + /** + * 休息开始时间 + */ + restStartTime: string; + + /** + * 休息结束时间 + */ + restEndTime: string; + +} + +export interface ShiftForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 班次名称 + */ + name?: string; + + /** + * 考勤开始时间 + */ + startTime?: string; + + /** + * 考勤结束时间 + */ + endTime?: string; + + /** + * 状态(0:off,1:on) + */ + status?: number; + + /** + * 是否休息(0:不休息,1:休息) + */ + isRest?: number; + + /** + * 休息开始时间 + */ + restStartTime?: string; + + /** + * 休息结束时间 + */ + restEndTime?: string; + +} + +export interface ShiftQuery extends PageQuery { + /** + * 班次名称 + */ + name?: string; + + /** + * 考勤开始时间 + */ + startTime?: string; + + /** + * 考勤结束时间 + */ + endTime?: string; + + /** + * 状态(0:off,1:on) + */ + status?: number; + + /** + * 是否休息(0:不休息,1:休息) + */ + isRest?: number; + + /** + * 休息开始时间 + */ + restStartTime?: string; + + /** + * 休息结束时间 + */ + restEndTime?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/carCharge/index.ts b/apps/web-antd/src/api/property/carCharge/index.ts new file mode 100644 index 00000000..2eb61a11 --- /dev/null +++ b/apps/web-antd/src/api/property/carCharge/index.ts @@ -0,0 +1,61 @@ +import type { CarChargeVO, CarChargeForm, CarChargeQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询费用-车辆收费列表 +* @param params +* @returns 费用-车辆收费列表 +*/ +export function carChargeList(params?: CarChargeQuery) { + return requestClient.get>('/property/carCharge/list', { params }); +} + +/** + * 导出费用-车辆收费列表 + * @param params + * @returns 费用-车辆收费列表 + */ +export function carChargeExport(params?: CarChargeQuery) { + return commonExport('/property/carCharge/export', params ?? {}); +} + +/** + * 查询费用-车辆收费详情 + * @param id id + * @returns 费用-车辆收费详情 + */ +export function carChargeInfo(id: ID) { + return requestClient.get(`/property/carCharge/${id}`); +} + +/** + * 新增费用-车辆收费 + * @param data + * @returns void + */ +export function carChargeAdd(data: CarChargeForm) { + return requestClient.postWithMsg('/property/carCharge', data); +} + +/** + * 更新费用-车辆收费 + * @param data + * @returns void + */ +export function carChargeUpdate(data: CarChargeForm) { + return requestClient.putWithMsg('/property/carCharge', data); +} + +/** + * 删除费用-车辆收费 + * @param id id + * @returns void + */ +export function carChargeRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/carCharge/${id}`); +} diff --git a/apps/web-antd/src/api/property/carCharge/model.d.ts b/apps/web-antd/src/api/property/carCharge/model.d.ts new file mode 100644 index 00000000..413ef066 --- /dev/null +++ b/apps/web-antd/src/api/property/carCharge/model.d.ts @@ -0,0 +1,169 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface CarChargeVO { + /** + * 主键 + */ + id: string | number; + + /** + * 车牌号 + */ + carNumber: string; + + /** + * 业主 + */ + personId: string | number; + + /** + * 楼层 + */ + floorId: string | number; + + /** + * 车位 + */ + location: string; + + /** + * 状态 + */ + state: string; + + /** + * 收费项目 + */ + costItemsId: string | number; + + /** + * 计费开始时间 + */ + starTime: string; + + /** + * 计费结束时间 + */ + endTime: string; + + /** + * 说明 + */ + remark: string; + + /** + * 搜索值 + */ + searchValue: string; + +} + +export interface CarChargeForm extends BaseEntity { + /** + * 主键 + */ + id?: string | number; + + /** + * 车牌号 + */ + carNumber?: string; + + /** + * 业主 + */ + personId?: string | number; + + /** + * 楼层 + */ + floorId?: string | number; + + /** + * 车位 + */ + location?: string; + + /** + * 状态 + */ + state?: string; + + /** + * 收费项目 + */ + costItemsId?: string | number; + + /** + * 计费开始时间 + */ + starTime?: string; + + /** + * 计费结束时间 + */ + endTime?: string; + + /** + * 说明 + */ + remark?: string; + + /** + * 搜索值 + */ + searchValue?: string; + +} + +export interface CarChargeQuery extends PageQuery { + /** + * 车牌号 + */ + carNumber?: string; + + /** + * 业主 + */ + personId?: string | number; + + /** + * 楼层 + */ + floorId?: string | number; + + /** + * 车位 + */ + location?: string; + + /** + * 状态 + */ + state?: string; + + /** + * 收费项目 + */ + costItemsId?: string | number; + + /** + * 计费开始时间 + */ + starTime?: string; + + /** + * 计费结束时间 + */ + endTime?: string; + + /** + * 搜索值 + */ + searchValue?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/costManagement/houseCharge/index.ts b/apps/web-antd/src/api/property/costManagement/houseCharge/index.ts new file mode 100644 index 00000000..c48acb4e --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/houseCharge/index.ts @@ -0,0 +1,61 @@ +import type { HouseChargeVO, HouseChargeForm, HouseChargeQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询房屋收费列表 +* @param params +* @returns 房屋收费列表 +*/ +export function houseChargeList(params?: HouseChargeQuery) { + return requestClient.get>('/property/houseCharge/list', { params }); +} + +/** + * 导出房屋收费列表 + * @param params + * @returns 房屋收费列表 + */ +export function houseChargeExport(params?: HouseChargeQuery) { + return commonExport('/property/houseCharge/export', params ?? {}); +} + +/** + * 查询房屋收费详情 + * @param id id + * @returns 房屋收费详情 + */ +export function houseChargeInfo(id: ID) { + return requestClient.get(`/property/houseCharge/${id}`); +} + +/** + * 新增房屋收费 + * @param data + * @returns void + */ +export function houseChargeAdd(data: HouseChargeForm) { + return requestClient.postWithMsg('/property/houseCharge', data); +} + +/** + * 更新房屋收费 + * @param data + * @returns void + */ +export function houseChargeUpdate(data: HouseChargeForm) { + return requestClient.putWithMsg('/property/houseCharge', data); +} + +/** + * 删除房屋收费 + * @param id id + * @returns void + */ +export function houseChargeRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/houseCharge/${id}`); +} diff --git a/apps/web-antd/src/api/property/costManagement/houseCharge/model.d.ts b/apps/web-antd/src/api/property/costManagement/houseCharge/model.d.ts new file mode 100644 index 00000000..2188b2fb --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/houseCharge/model.d.ts @@ -0,0 +1,145 @@ +import type {PageQuery, BaseEntity} from '#/api/common'; +import type {RoomVO} from "#/api/property/room/model"; +import type {CostItemSettingVO} from "#/api/property/costManagement/costItemSetting/model"; + +export interface HouseChargeVO { + /** + * 主键 + */ + id: string | number; + + /** + * 房屋 + */ + roomId: string | number; + + /** + * 收费项目 + */ + costItemsId: string | number; + + /** + * 应收金额 + */ + amountReceivable: number; + + /** + * 计费开始时间 + */ + startTime: string; + + /** + * 计费结束时间 + */ + endTime: string; + + /** + * 状态 + */ + state: string; + + /** + * 说明 + */ + remark: string; + + chargeTime: any[]; + /** + * 缴费周期 + */ + chargeCycle: number; + /** + * 支付方式 + */ + payType: string; + + roomVo: RoomVO; + + costItemsVo: CostItemSettingVO; + + chargeStatus: string; +} + +export interface HouseChargeForm extends BaseEntity { + /** + * 主键 + */ + id?: string | number; + + /** + * 房屋 + */ + roomId?: string | number; + + /** + * 收费项目 + */ + costItemsId?: string | number; + + /** + * 应收金额 + */ + amountReceivable?: number; + + /** + * 计费开始时间 + */ + startTime?: string; + + /** + * 计费结束时间 + */ + endTime?: string; + + /** + * 状态 + */ + state?: string; + + /** + * 说明 + */ + remark?: string; + + /** + * 缴费状态 + */ + chargeStatus?: string; +} + +export interface HouseChargeQuery extends PageQuery { + /** + * 房屋 + */ + roomId?: string | number; + + /** + * 收费项目 + */ + costItemsId?: string | number; + + /** + * 应收金额 + */ + amountReceivable?: number; + + /** + * 计费开始时间 + */ + startTime?: string; + + /** + * 计费结束时间 + */ + endTime?: string; + + /** + * 状态 + */ + state?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/costManagement/paymentReview/index.ts b/apps/web-antd/src/api/property/costManagement/paymentReview/index.ts new file mode 100644 index 00000000..4980e8eb --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/paymentReview/index.ts @@ -0,0 +1,61 @@ +import type { PaymentReviewVO, PaymentReviewForm, PaymentReviewQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询缴费审核列表 +* @param params +* @returns 缴费审核列表 +*/ +export function paymentReviewList(params?: PaymentReviewQuery) { + return requestClient.get>('/property/payFeeAudit/list', { params }); +} + +/** + * 导出缴费审核列表 + * @param params + * @returns 缴费审核列表 + */ +export function paymentReviewExport(params?: PaymentReviewQuery) { + return commonExport('/property/payFeeAudit/export', params ?? {}); +} + +/** + * 查询缴费审核详情 + * @param id id + * @returns 缴费审核详情 + */ +export function paymentReviewInfo(id: ID) { + return requestClient.get(`/property/payFeeAudit/${id}`); +} + +/** + * 新增缴费审核 + * @param data + * @returns void + */ +export function paymentReviewAdd(data: PaymentReviewForm) { + return requestClient.postWithMsg('/property/payFeeAudit', data); +} + +/** + * 更新缴费审核 + * @param data + * @returns void + */ +export function paymentReviewUpdate(data: PaymentReviewForm) { + return requestClient.putWithMsg('/property/payFeeAudit', data); +} + +/** + * 删除缴费审核 + * @param id id + * @returns void + */ +export function paymentReviewRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/payFeeAudit/${id}`); +} diff --git a/apps/web-antd/src/api/property/costManagement/paymentReview/model.d.ts b/apps/web-antd/src/api/property/costManagement/paymentReview/model.d.ts new file mode 100644 index 00000000..e3bbb58f --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/paymentReview/model.d.ts @@ -0,0 +1,175 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface PaymentReviewVO { + /** + * 主键 + */ + id: string | number; + + /** + * 房屋收费id + */ + houseChargeId: string | number; + + /** + * 费用项目id + */ + itemId: string | number; + + /** + * 缴费开始时间 + */ + startTime: string; + + /** + * 缴费结束时间 + */ + endTime: string; + + /** + * 实付金额 + */ + receivedAmount: string; + + /** + * 应收金额 + */ + receivableAmount: number; + + /** + * 缴费时间 + + + */ + payTime: string; + + /** + * 审核状态 + */ + state: string; + + /** + * 备注 + */ + remark: string; + + /** + * 搜索值 + */ + searchValue: string; + +} + +export interface PaymentReviewForm extends BaseEntity { + /** + * 主键 + */ + id?: string | number; + + /** + * 房屋收费id + */ + houseChargeId?: string | number; + + /** + * 费用项目id + */ + itemId?: string | number; + + /** + * 缴费开始时间 + */ + startTime?: string; + + /** + * 缴费结束时间 + */ + endTime?: string; + + /** + * 实付金额 + */ + receivedAmount?: string; + + /** + * 应收金额 + */ + receivableAmount?: number; + + /** + * 缴费时间 + + + */ + payTime?: string; + + /** + * 审核状态 + */ + state?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * 搜索值 + */ + searchValue?: string; + +} + +export interface PaymentReviewQuery extends PageQuery { + /** + * 房屋收费id + */ + houseChargeId?: string | number; + + /** + * 费用项目id + */ + itemId?: string | number; + + /** + * 缴费开始时间 + */ + startTime?: string; + + /** + * 缴费结束时间 + */ + endTime?: string; + + /** + * 实付金额 + */ + receivedAmount?: string; + + /** + * 应收金额 + */ + receivableAmount?: number; + + /** + * 缴费时间 + + + */ + payTime?: string; + + /** + * 审核状态 + */ + state?: string; + + /** + * 搜索值 + */ + searchValue?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/costManagement/returnPayFee/index.ts b/apps/web-antd/src/api/property/costManagement/returnPayFee/index.ts new file mode 100644 index 00000000..34a8de02 --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/returnPayFee/index.ts @@ -0,0 +1,61 @@ +import type { ReturnPayFeeVO, ReturnPayFeeForm, ReturnPayFeeQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询退费审核列表 +* @param params +* @returns 退费审核列表 +*/ +export function returnPayFeeList(params?: ReturnPayFeeQuery) { + return requestClient.get>('/property/returnPayFee/list', { params }); +} + +/** + * 导出退费审核列表 + * @param params + * @returns 退费审核列表 + */ +export function returnPayFeeExport(params?: ReturnPayFeeQuery) { + return commonExport('/property/returnPayFee/export', params ?? {}); +} + +/** + * 查询退费审核详情 + * @param id id + * @returns 退费审核详情 + */ +export function returnPayFeeInfo(id: ID) { + return requestClient.get(`/property/returnPayFee/${id}`); +} + +/** + * 新增退费审核 + * @param data + * @returns void + */ +export function returnPayFeeAdd(data: ReturnPayFeeForm) { + return requestClient.postWithMsg('/property/returnPayFee', data); +} + +/** + * 更新退费审核 + * @param data + * @returns void + */ +export function returnPayFeeUpdate(data: ReturnPayFeeForm) { + return requestClient.putWithMsg('/property/returnPayFee', data); +} + +/** + * 删除退费审核 + * @param id id + * @returns void + */ +export function returnPayFeeRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/returnPayFee/${id}`); +} diff --git a/apps/web-antd/src/api/property/costManagement/returnPayFee/model.d.ts b/apps/web-antd/src/api/property/costManagement/returnPayFee/model.d.ts new file mode 100644 index 00000000..b9a5d954 --- /dev/null +++ b/apps/web-antd/src/api/property/costManagement/returnPayFee/model.d.ts @@ -0,0 +1,154 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface ReturnPayFeeVO { + /** + * 主键 + */ + id: string | number; + + /** + * 退款单号 + */ + returnNo?: string; + + /** + * 支付单号 + */ + payNo?: string; + + /** + * 退款原因 + */ + reason?: string; + + /** + * 费用类型id + */ + itemId?: string | number; + + /** + * 业主id + */ + userId?: string | number; + + /** + * 支付金额 + */ + payAcount?: number; + + /** + * 支付时间 + */ + payTime?: string; + + /** + * 退费状态 + */ + state: string; + + /** + * 说明 + */ + remark: string; + +} + +export interface ReturnPayFeeForm extends BaseEntity { + /** + * 主键 + */ + id?: string | number; + + /** + * 退款单号 + */ + returnNo?: string; + + /** + * 支付单号 + */ + payNo?: string; + + /** + * 退款原因 + */ + reason?: string; + + /** + * 费用类型id + */ + itemId?: string | number; + + /** + * 业主id + */ + userId?: string | number; + + /** + * 支付金额 + */ + payAcount?: number; + + /** + * 支付时间 + */ + payTime?: string; + + /** + * 退费状态 + */ + state?: string; + + /** + * 说明 + */ + remark?: string; + +} + +export interface ReturnPayFeeQuery extends PageQuery { + /** + * 退款单号 + */ + returnNo?: string; + + /** + * 支付单号 + */ + payNo?: string; + + /** + * 退款原因 + */ + reason?: string; + + /** + * 费用类型id + */ + itemId?: string | number; + + /** + * 业主id + */ + userId?: string | number; + + /** + * 支付金额 + */ + payAcount?: number; + + /** + * 支付时间 + */ + payTime?: string; + + /** + * 退费状态 + */ + state?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/costMeterWater/index.ts b/apps/web-antd/src/api/property/costMeterWater/index.ts new file mode 100644 index 00000000..a258139e --- /dev/null +++ b/apps/web-antd/src/api/property/costMeterWater/index.ts @@ -0,0 +1,61 @@ +import type { CostMeterWaterVO, CostMeterWaterForm, CostMeterWaterQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询费用-水电抄列表 +* @param params +* @returns 费用-水电抄列表 +*/ +export function costMeterWaterList(params?: CostMeterWaterQuery) { + return requestClient.get>('/property/costMeterWater/list', { params }); +} + +/** + * 导出费用-水电抄列表 + * @param params + * @returns 费用-水电抄列表 + */ +export function costMeterWaterExport(params?: CostMeterWaterQuery) { + return commonExport('/property/costMeterWater/export', params ?? {}); +} + +/** + * 查询费用-水电抄详情 + * @param id id + * @returns 费用-水电抄详情 + */ +export function costMeterWaterInfo(id: ID) { + return requestClient.get(`/property/costMeterWater/${id}`); +} + +/** + * 新增费用-水电抄 + * @param data + * @returns void + */ +export function costMeterWaterAdd(data: CostMeterWaterForm) { + return requestClient.postWithMsg('/property/costMeterWater', data); +} + +/** + * 更新费用-水电抄 + * @param data + * @returns void + */ +export function costMeterWaterUpdate(data: CostMeterWaterForm) { + return requestClient.putWithMsg('/property/costMeterWater', data); +} + +/** + * 删除费用-水电抄 + * @param id id + * @returns void + */ +export function costMeterWaterRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/property/costMeterWater/${id}`); +} diff --git a/apps/web-antd/src/api/property/costMeterWater/model.d.ts b/apps/web-antd/src/api/property/costMeterWater/model.d.ts new file mode 100644 index 00000000..c96b39b8 --- /dev/null +++ b/apps/web-antd/src/api/property/costMeterWater/model.d.ts @@ -0,0 +1,157 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface CostMeterWaterVO { + /** + * 主键 + */ + id: string | number; + + /** + * 费用类型id + */ + itemId: string | number; + + /** + * 抄表类型id + */ + meterTypeId: string | number; + + /** + * 对象名称 + */ + objName: string; + + /** + * 本期度数 + */ + curDegrees: string; + + /** + * 上期度数 + */ + preDegrees: string; + + /** + * 上期读表时间 + + */ + preReadingTime: string; + + /** + * 本期读表时间 + */ + curReadingTime: string; + + /** + * 备注 + */ + remark: string; + + /** + * 搜索值 + */ + searchValue: string; + +} + +export interface CostMeterWaterForm extends BaseEntity { + /** + * 主键 + */ + id?: string | number; + + /** + * 费用类型id + */ + itemId?: string | number; + + /** + * 抄表类型id + */ + meterTypeId?: string | number; + + /** + * 对象名称 + */ + objName?: string; + + /** + * 本期度数 + */ + curDegrees?: string; + + /** + * 上期度数 + */ + preDegrees?: string; + + /** + * 上期读表时间 + + */ + preReadingTime?: string; + + /** + * 本期读表时间 + */ + curReadingTime?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * 搜索值 + */ + searchValue?: string; + +} + +export interface CostMeterWaterQuery extends PageQuery { + /** + * 费用类型id + */ + itemId?: string | number; + + /** + * 抄表类型id + */ + meterTypeId?: string | number; + + /** + * 对象名称 + */ + objName?: string; + + /** + * 本期度数 + */ + curDegrees?: string; + + /** + * 上期度数 + */ + preDegrees?: string; + + /** + * 上期读表时间 + + */ + preReadingTime?: string; + + /** + * 本期读表时间 + */ + curReadingTime?: string; + + /** + * 搜索值 + */ + searchValue?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/property/equipmentManagement/maintainPlan/model.d.ts b/apps/web-antd/src/api/property/equipmentManagement/maintainPlan/model.d.ts index cfea1a69..6350b7c2 100644 --- a/apps/web-antd/src/api/property/equipmentManagement/maintainPlan/model.d.ts +++ b/apps/web-antd/src/api/property/equipmentManagement/maintainPlan/model.d.ts @@ -1,4 +1,4 @@ -import type { PageQuery, BaseEntity } from '#/api/common'; +import type {PageQuery, BaseEntity} from '#/api/common'; export interface MaintainPlanVO { /** @@ -56,6 +56,11 @@ export interface MaintainPlanVO { */ state: string; + planDate: any[] + + userId: string[]; + + machineMaintainPlanStaffBoList:any[]; } export interface MaintainPlanForm extends BaseEntity { @@ -168,7 +173,7 @@ export interface MaintainPlanQuery extends PageQuery { state?: string; /** - * 日期范围参数 - */ + * 日期范围参数 + */ params?: any; } diff --git a/apps/web-antd/src/api/property/room/model.d.ts b/apps/web-antd/src/api/property/room/model.d.ts index 122d596b..a01052ac 100644 --- a/apps/web-antd/src/api/property/room/model.d.ts +++ b/apps/web-antd/src/api/property/room/model.d.ts @@ -2,7 +2,7 @@ import type { PageQuery, BaseEntity } from '#/api/common'; export interface RoomVO { /** - * + * */ id: string | number; @@ -22,10 +22,15 @@ export interface RoomVO { roomType: number; /** - * 面积(平方米) + * 建筑面积(平方米) */ area: number; + /** + * 套内面积(平方米) + */ + insideInArea: number; + /** * 户型(如2室1厅1卫) */ @@ -50,7 +55,7 @@ export interface RoomVO { export interface RoomForm extends BaseEntity { /** - * + * */ id?: string | number; diff --git a/apps/web-antd/src/api/sis/deviceChannel/index.ts b/apps/web-antd/src/api/sis/deviceChannel/index.ts new file mode 100644 index 00000000..66fe9f35 --- /dev/null +++ b/apps/web-antd/src/api/sis/deviceChannel/index.ts @@ -0,0 +1,74 @@ +import type { + DeviceChannelForm, + DeviceChannelQuery, + DeviceChannelVO, +} from './model'; + +import type { ID, IDS, PageResult, TreeNode } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** + * 查询设备通道管理列表 + * @param params + * @returns 设备通道管理列表 + */ +export function deviceChannelList(params?: DeviceChannelQuery) { + return requestClient.get>( + '/sis/deviceChannel/list', + { params }, + ); +} + +/** + * 获取通道树结构 + */ +export function treeList() { + return requestClient.get('/sis/deviceChannel/treeList'); +} + +/** + * 导出设备通道管理列表 + * @param params + * @returns 设备通道管理列表 + */ +export function deviceChannelExport(params?: DeviceChannelQuery) { + return commonExport('/sis/deviceChannel/export', params ?? {}); +} + +/** + * 查询设备通道管理详情 + * @param id id + * @returns 设备通道管理详情 + */ +export function deviceChannelInfo(id: ID) { + return requestClient.get(`/sis/deviceChannel/${id}`); +} + +/** + * 新增设备通道管理 + * @param data + * @returns void + */ +export function deviceChannelAdd(data: DeviceChannelForm) { + return requestClient.postWithMsg('/sis/deviceChannel', data); +} + +/** + * 更新设备通道管理 + * @param data + * @returns void + */ +export function deviceChannelUpdate(data: DeviceChannelForm) { + return requestClient.putWithMsg('/sis/deviceChannel', data); +} + +/** + * 删除设备通道管理 + * @param id id + * @returns void + */ +export function deviceChannelRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/sis/deviceChannel/${id}`); +} diff --git a/apps/web-antd/src/api/sis/deviceChannel/model.d.ts b/apps/web-antd/src/api/sis/deviceChannel/model.d.ts new file mode 100644 index 00000000..37055ca9 --- /dev/null +++ b/apps/web-antd/src/api/sis/deviceChannel/model.d.ts @@ -0,0 +1,159 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface DeviceChannelVO { + /** + * 主键id + */ + id: string | number; + + /** + * 设备id + */ + deviceId: string | number; + + /** + * 设备名称 + */ + deviceName: string; + + /** + * 通道分组组id + */ + groupId: string | number; + + /** + * 设备ip + */ + deviceIp: string; + + /** + * 设备端口 + */ + devicePort: number; + + /** + * 设备账号 + */ + deviceAccount: string; + + /** + * 设备密码 + */ + devicePwd: string; + + /** + * 设备 + */ + deviceMac: string; + + /** + * 设备通道编号 + */ + channelNo: string; + +} + +export interface DeviceChannelForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 设备id + */ + deviceId?: string | number; + + /** + * 设备名称 + */ + deviceName?: string; + + /** + * 通道分组组id + */ + groupId?: string | number; + + /** + * 设备ip + */ + deviceIp?: string; + + /** + * 设备端口 + */ + devicePort?: number; + + /** + * 设备账号 + */ + deviceAccount?: string; + + /** + * 设备密码 + */ + devicePwd?: string; + + /** + * 设备 + */ + deviceMac?: string; + + /** + * 设备通道编号 + */ + channelNo?: string; + +} + +export interface DeviceChannelQuery extends PageQuery { + /** + * 设备id + */ + deviceId?: string | number; + + /** + * 设备名称 + */ + deviceName?: string; + + /** + * 通道分组组id + */ + groupId?: string | number; + + /** + * 设备ip + */ + deviceIp?: string; + + /** + * 设备端口 + */ + devicePort?: number; + + /** + * 设备账号 + */ + deviceAccount?: string; + + /** + * 设备密码 + */ + devicePwd?: string; + + /** + * 设备 + */ + deviceMac?: string; + + /** + * 设备通道编号 + */ + channelNo?: string; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/sis/deviceGroup/index.ts b/apps/web-antd/src/api/sis/deviceGroup/index.ts new file mode 100644 index 00000000..bbabeadd --- /dev/null +++ b/apps/web-antd/src/api/sis/deviceGroup/index.ts @@ -0,0 +1,61 @@ +import type { DeviceGroupVO, DeviceGroupForm, DeviceGroupQuery } from './model'; + +import type { ID, IDS } from '#/api/common'; +import type { PageResult } from '#/api/common'; + +import { commonExport } from '#/api/helper'; +import { requestClient } from '#/api/request'; + +/** +* 查询设备组管理列表 +* @param params +* @returns 设备组管理列表 +*/ +export function deviceGroupList(params?: DeviceGroupQuery) { + return requestClient.get>('/sis/deviceGroup/list', { params }); +} + +/** + * 导出设备组管理列表 + * @param params + * @returns 设备组管理列表 + */ +export function deviceGroupExport(params?: DeviceGroupQuery) { + return commonExport('/sis/deviceGroup/export', params ?? {}); +} + +/** + * 查询设备组管理详情 + * @param id id + * @returns 设备组管理详情 + */ +export function deviceGroupInfo(id: ID) { + return requestClient.get(`/sis/deviceGroup/${id}`); +} + +/** + * 新增设备组管理 + * @param data + * @returns void + */ +export function deviceGroupAdd(data: DeviceGroupForm) { + return requestClient.postWithMsg('/sis/deviceGroup', data); +} + +/** + * 更新设备组管理 + * @param data + * @returns void + */ +export function deviceGroupUpdate(data: DeviceGroupForm) { + return requestClient.putWithMsg('/sis/deviceGroup', data); +} + +/** + * 删除设备组管理 + * @param id id + * @returns void + */ +export function deviceGroupRemove(id: ID | IDS) { + return requestClient.deleteWithMsg(`/sis/deviceGroup/${id}`); +} diff --git a/apps/web-antd/src/api/sis/deviceGroup/model.d.ts b/apps/web-antd/src/api/sis/deviceGroup/model.d.ts new file mode 100644 index 00000000..76dd4118 --- /dev/null +++ b/apps/web-antd/src/api/sis/deviceGroup/model.d.ts @@ -0,0 +1,64 @@ +import type { PageQuery, BaseEntity } from '#/api/common'; + +export interface DeviceGroupVO { + /** + * 主键id + */ + id: string | number; + + /** + * 分组名称 + */ + name: string; + + /** + * 父编码id(-1 表示根节点) + */ + parentId: string | number; + + /** + * 备注 + */ + remark: string; + +} + +export interface DeviceGroupForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 分组名称 + */ + name?: string; + + /** + * 父编码id(-1 表示根节点) + */ + parentId?: string | number; + + /** + * 备注 + */ + remark?: string; + +} + +export interface DeviceGroupQuery extends PageQuery { + /** + * 分组名称 + */ + name?: string; + + /** + * 父编码id(-1 表示根节点) + */ + parentId?: string | number; + + /** + * 日期范围参数 + */ + params?: any; +} diff --git a/apps/web-antd/src/api/sis/deviceManage/model.d.ts b/apps/web-antd/src/api/sis/deviceManage/model.d.ts index 46d73770..7f5e0160 100644 --- a/apps/web-antd/src/api/sis/deviceManage/model.d.ts +++ b/apps/web-antd/src/api/sis/deviceManage/model.d.ts @@ -1,4 +1,4 @@ -import type { PageQuery, BaseEntity } from '#/api/common'; +import type { BaseEntity, PageQuery } from '#/api/common'; export interface DeviceManageVO { /** @@ -80,7 +80,6 @@ export interface DeviceManageVO { * 门禁id */ accessControlId: string | number; - } export interface DeviceManageForm extends BaseEntity { @@ -128,42 +127,6 @@ export interface DeviceManageForm extends BaseEntity { * 设备在线状态 0:离线 1:在线 2:未知 */ deviceStatus?: number; - - /** - * 父级设备id - */ - parentId?: string | number; - - /** - * 设备通道编号 - */ - channelNo?: string; - - /** - * 录像机ip - */ - vcrIp?: string; - - /** - * 录像机端口 - */ - vcrPort?: number; - - /** - * 录像机账号 - */ - vcrAccount?: string; - - /** - * 录像机密码 - */ - vcrPwd?: string; - - /** - * 门禁id - */ - accessControlId?: string | number; - } export interface DeviceManageQuery extends PageQuery { @@ -208,42 +171,7 @@ export interface DeviceManageQuery extends PageQuery { deviceStatus?: number; /** - * 父级设备id + * 日期范围参数 */ - parentId?: string | number; - - /** - * 设备通道编号 - */ - channelNo?: string; - - /** - * 录像机ip - */ - vcrIp?: string; - - /** - * 录像机端口 - */ - vcrPort?: number; - - /** - * 录像机账号 - */ - vcrAccount?: string; - - /** - * 录像机密码 - */ - vcrPwd?: string; - - /** - * 门禁id - */ - accessControlId?: string | number; - - /** - * 日期范围参数 - */ params?: any; } diff --git a/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/attendanceGroupSettings/index.vue b/apps/web-antd/src/views/property/attendanceManagement/attendanceGroupSettings/index.vue similarity index 100% rename from apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/attendanceGroupSettings/index.vue rename to apps/web-antd/src/views/property/attendanceManagement/attendanceGroupSettings/index.vue diff --git a/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/festivalAndHoliday/index.vue b/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/festivalAndHoliday/index.vue deleted file mode 100644 index c8764c2e..00000000 --- a/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/festivalAndHoliday/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/shiftSetting/index.vue b/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/shiftSetting/index.vue deleted file mode 100644 index cbdee30e..00000000 --- a/apps/web-antd/src/views/property/attendanceManagement/attendanceSettings/shiftSetting/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/CheckInRecord/index.vue b/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/CheckInRecord/index.vue deleted file mode 100644 index 7845cc97..00000000 --- a/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/CheckInRecord/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/dailyStatistics/index.vue b/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/dailyStatistics/index.vue deleted file mode 100644 index 178bfe9f..00000000 --- a/apps/web-antd/src/views/property/attendanceManagement/attendanceStatistics/dailyStatistics/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/apps/web-antd/src/views/property/attendanceManagement/holidayType/index.vue b/apps/web-antd/src/views/property/attendanceManagement/holidayType/index.vue deleted file mode 100644 index d3035dd3..00000000 --- a/apps/web-antd/src/views/property/attendanceManagement/holidayType/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/data.ts b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/data.ts new file mode 100644 index 00000000..3f23707f --- /dev/null +++ b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/data.ts @@ -0,0 +1,181 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'name', + label: '班次名称', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'startTime', + label: '考勤开始时间', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'endTime', + label: '考勤结束时间', + }, + { + component: 'RadioGroup', + componentProps: { + buttonStyle: 'solid', + optionType: 'button', + }, + fieldName: 'status', + label: '状态', + }, + { + component: 'Input', + fieldName: 'isRest', + label: '是否休息', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'restStartTime', + label: '休息开始时间', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'restEndTime', + label: '休息结束时间', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键id', + field: 'id', + }, + { + title: '班次名称', + field: 'name', + }, + { + title: '考勤开始时间', + field: 'startTime', + }, + { + title: '考勤结束时间', + field: 'endTime', + }, + { + title: '状态', + field: 'status', + }, + { + title: '是否休息', + field: 'isRest', + }, + { + title: '休息开始时间', + field: 'restStartTime', + }, + { + title: '休息结束时间', + field: 'restEndTime', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键id', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '班次名称', + fieldName: 'name', + component: 'Input', + }, + { + label: '考勤开始时间', + fieldName: 'startTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '考勤结束时间', + fieldName: 'endTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '状态', + fieldName: 'status', + component: 'RadioGroup', + componentProps: { + buttonStyle: 'solid', + optionType: 'button', + }, + }, + { + label: '是否休息', + fieldName: 'isRest', + component: 'Input', + }, + { + label: '休息开始时间', + fieldName: 'restStartTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '休息结束时间', + fieldName: 'restEndTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, +]; diff --git a/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/index.vue b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/index.vue new file mode 100644 index 00000000..278b8d2c --- /dev/null +++ b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/shift-modal.vue b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/shift-modal.vue new file mode 100644 index 00000000..8c3f0b9e --- /dev/null +++ b/apps/web-antd/src/views/property/attendanceManagement/shiftSetting/shift-modal.vue @@ -0,0 +1,101 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-add-modal.vue b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-add-modal.vue new file mode 100644 index 00000000..e9c7ef28 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-add-modal.vue @@ -0,0 +1,91 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-detail-modal.vue b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-detail-modal.vue new file mode 100644 index 00000000..c806339f --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-detail-modal.vue @@ -0,0 +1,101 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-pay-modal.vue b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-pay-modal.vue new file mode 100644 index 00000000..082e6122 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/carCharge/carCharge-pay-modal.vue @@ -0,0 +1,89 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/carCharge/data.ts b/apps/web-antd/src/views/property/costManagement/carCharge/data.ts new file mode 100644 index 00000000..b8862bfd --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/carCharge/data.ts @@ -0,0 +1,350 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + +import { getDictOptions } from '#/utils/dict'; +import { renderDict } from '#/utils/render'; + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'carNumber', + label: '车牌号', + }, + { + component: 'Input', + fieldName: 'personId', + label: '业主', + }, + { + component: 'Select', + componentProps: { + // 可选从DictEnum中获取 DictEnum.WY_CSZT 便于维护 + options: getDictOptions('wy_cszt'), + }, + fieldName: 'state', + label: '状态', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '序号', + field: 'id', + slots: { + default: ({ rowIndex }) => { + return (rowIndex + 1).toString(); + }, + }, + }, + { + title: '车牌号', + field: 'carNumber', + }, + { + title: '车位', + field: 'location', + }, + { + title: '业主', + field: 'personId', + }, + { + title: '状态', + field: 'state', + slots: { + default: ({ row }) => { + // 可选从DictEnum中获取 DictEnum.WY_CSZT 便于维护 + return renderDict(row.state, 'wy_cszt'); + }, + }, + }, + { + title: '收费项目', + field: 'costItemsId', + }, + { + title: '计费开始时间', + field: 'starTime', + }, + { + title: '计费结束时间', + field: 'endTime', + }, + { + title: '说明', + field: 'remark', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; +//详情 +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '车牌号', + fieldName: 'carNumber', + component: 'Input', + rules: 'required', + }, + { + label: '业主', + fieldName: 'personId', + component: 'Input', + }, + { + label: '楼层', + fieldName: 'floorId', + component: 'Input', + rules: 'required', + }, + { + label: '车位', + fieldName: 'location', + component: 'Input', + }, + { + label: '状态', + fieldName: 'state', + component: 'Select', + componentProps: { + // 可选从DictEnum中获取 DictEnum.WY_CSZT 便于维护 + options: getDictOptions('wy_cszt'), + }, + }, + { + label: '收费项目', + fieldName: 'costItemsId', + component: 'Input', + }, + { + label: '计费开始时间', + fieldName: 'starTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '计费结束时间', + fieldName: 'endTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '说明', + fieldName: 'remark', + component: 'Input', + }, + { + label: '搜索值', + fieldName: 'searchValue', + component: 'Input', + }, +]; +//创建 +export const addModalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '车牌号', + fieldName: 'carNumber', + component: 'Input', + rules: 'required', + }, + // { + // label: '费用类型',//一个费用下有对各费用项目 + // fieldName: 'personId', + // component: 'Input', + // }, + { + label: '收费项目',//一个费用收费项目对应一个费用类型 + fieldName: 'costItemsId', + component: 'Input', + rules: 'required', + }, + { + label: '计费开始时间', + fieldName: 'starTime', + component: 'DatePicker', + rules: 'required', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '计费结束时间', + fieldName: 'endTime', + component: 'DatePicker', + rules:'required', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '说明', + fieldName: 'remark', + component: 'Input', + }, +]; +//缴费 +export const payModalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '车牌号', + fieldName: 'carNumber', + component: 'Input', + rules: 'required', + }, + // { + // label: '费用类型',//一个费用下有对各费用项目 + // fieldName: 'personId', + // component: 'Input', + // }, + { + label: '收费项目',//一个费用收费项目对应一个费用类型 + fieldName: 'costItemsId', + component: 'Input', + rules: 'required', + }, + { + label: '计费开始时间', + fieldName: 'starTime', + component: 'DatePicker', + rules: 'required', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '计费结束时间', + fieldName: 'endTime', + component: 'DatePicker', + rules:'required', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + }, + { + label: '说明', + fieldName: 'remark', + component: 'Input', + }, + { + label: '支付方式', + fieldName: 'carNumber', + component: 'Input', + rules: 'required', + }, + { + label: '缴费周期', + fieldName: 'personId', + component: 'Input', + }, + { + label: '实收金额', + fieldName: 'costItemsId', + component: 'Input', + }, + { + label: '自定义周期', + fieldName: 'remark', + component: 'Input', + }, +]; +export const detailColumns: VxeGridProps['columns'] = [ + { + title: '序号', + field: 'id', + slots: { + default: ({ rowIndex }) => { + return (rowIndex + 1).toString(); + }, + }, + }, + { + title: '费用项目', + field: 'carNumber', + }, + { + title: '费用标识', + field: 'location', + }, + { + title: '应收金额', + field: 'personId', + }, + { + title: '状态', + field: 'state', + slots: { + default: ({ row }) => { + // 可选从DictEnum中获取 DictEnum.WY_CSZT 便于维护 + return renderDict(row.state, 'wy_cszt'); + }, + }, + }, + { + title: '建帐时间', + field: 'starTime', + }, + { + title: '应收时间', + field: 'endTime', + }, + { + title: '说明', + field: 'remark', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; diff --git a/apps/web-antd/src/views/property/costManagement/carCharge/index.vue b/apps/web-antd/src/views/property/costManagement/carCharge/index.vue new file mode 100644 index 00000000..b2f39efc --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/carCharge/index.vue @@ -0,0 +1,173 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/costItemSetting/costItemSetting-detail.vue b/apps/web-antd/src/views/property/costManagement/costItemSetting/costItemSetting-detail.vue new file mode 100644 index 00000000..e3b8ed3d --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/costItemSetting/costItemSetting-detail.vue @@ -0,0 +1,99 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts b/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts index 92f9bc96..1a81f642 100644 --- a/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts +++ b/apps/web-antd/src/views/property/costManagement/costItemSetting/data.ts @@ -1,13 +1,12 @@ import type { FormSchemaGetter } from '#/adapter/form'; import type { VxeGridProps } from '#/adapter/vxe-table'; - import { getDictOptions } from '#/utils/dict'; import { renderDict } from '#/utils/render'; export const querySchema: FormSchemaGetter = () => [ { component: 'Input', - fieldName: 'chargeItem', + fieldName: 'chargeNo', label: '费用编号', }, { @@ -28,20 +27,17 @@ export const querySchema: FormSchemaGetter = () => [ }, ]; -// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 -// export const columns: () => VxeGridProps['columns'] = () => [ export const columns: VxeGridProps['columns'] = [ { type: 'checkbox', width: 60 }, { title: '费用编号', - field: 'chargeItem', + field: 'chargeNo', }, { title: '费用类型', field: 'costType', slots: { default: ({ row }) => { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 return renderDict(row.costType, 'pro_expense_type'); }, }, @@ -55,8 +51,7 @@ export const columns: VxeGridProps['columns'] = [ field: 'costMark', slots: { default: ({ row }) => { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 - return renderDict(row.costType, 'pro_cost_identification'); + return renderDict(row.costMark, 'pro_cost_identification'); }, }, }, @@ -65,8 +60,7 @@ export const columns: VxeGridProps['columns'] = [ field: 'paymentType', slots: { default: ({ row }) => { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 - return renderDict(row.costType, 'pro_payment_type'); + return renderDict(row.paymentType, 'pro_payment_type'); }, }, }, @@ -77,6 +71,11 @@ export const columns: VxeGridProps['columns'] = [ { title: '计算公式', field: 'formula', + slots: { + default: ({ row }) => { + return renderDict(row.formula, 'pro_calculation_formula'); + }, + }, }, { title: '计费单价', @@ -86,6 +85,12 @@ export const columns: VxeGridProps['columns'] = [ title: '附加费用', field: 'surcharge', }, + { + title: '状态', + field: 'state', + slots: {default: 'state'}, + width: 100, + }, { field: 'action', fixed: 'right', @@ -110,7 +115,6 @@ export const modalSchema: FormSchemaGetter = () => [ fieldName: 'costType', component: 'Select', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_expense_type'), }, rules: 'selectRequired', @@ -126,7 +130,6 @@ export const modalSchema: FormSchemaGetter = () => [ fieldName: 'costMark', component: 'Select', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_cost_identification'), }, rules: 'required', @@ -144,13 +147,22 @@ export const modalSchema: FormSchemaGetter = () => [ label: '费用周期(月)', fieldName: 'chargeCycle', component: 'Input', + rules: 'required', + }, + { + label: '单位', + fieldName: 'unit', + component: 'Input', + rules: 'required', + componentProps: { + placeholder: '请输入(如:元)', + }, }, { label: '手机缴费', fieldName: 'isMobilePay', component: 'Select', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_mobile_payment'), }, rules: 'selectRequired', @@ -159,7 +171,6 @@ export const modalSchema: FormSchemaGetter = () => [ label: '进位方式', fieldName: 'roundingMode', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_carry_method'), }, component: 'Select', @@ -170,22 +181,24 @@ export const modalSchema: FormSchemaGetter = () => [ fieldName: 'currencyDecimals', component: 'Select', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_keep_decimals'), }, rules: 'selectRequired', }, { - label: '启用状态', + component: 'Select', + componentProps: { + options: getDictOptions('wy_state'), + }, fieldName: 'state', - component: 'Input', + label: '状态', + rules: 'selectRequired', }, { label: '计算公式', fieldName: 'formula', component: 'Select', componentProps: { - // 可选从DictEnum中获取 DictEnum.PRO_EXPENSE_TYPE 便于维护 options: getDictOptions('pro_calculation_formula'), }, rules: 'selectRequired', @@ -195,10 +208,12 @@ export const modalSchema: FormSchemaGetter = () => [ label: '计费单价', fieldName: 'unitPrice', component: 'Input', + rules: 'required', }, { label: '附加费', fieldName: 'surcharge', component: 'Input', + rules: 'required', }, ]; diff --git a/apps/web-antd/src/views/property/costManagement/costItemSetting/index.vue b/apps/web-antd/src/views/property/costManagement/costItemSetting/index.vue index 8fc762fe..1d3c3d18 100644 --- a/apps/web-antd/src/views/property/costManagement/costItemSetting/index.vue +++ b/apps/web-antd/src/views/property/costManagement/costItemSetting/index.vue @@ -1,23 +1,22 @@ + + diff --git a/apps/web-antd/src/views/property/costManagement/costMeterWater/costMeterWater-modal.vue b/apps/web-antd/src/views/property/costManagement/costMeterWater/costMeterWater-modal.vue new file mode 100644 index 00000000..b932f230 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/costMeterWater/costMeterWater-modal.vue @@ -0,0 +1,101 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/costMeterWater/data.ts b/apps/web-antd/src/views/property/costManagement/costMeterWater/data.ts new file mode 100644 index 00000000..7fb9f87b --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/costMeterWater/data.ts @@ -0,0 +1,183 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'itemId', + label: '费用类型id', + }, + { + component: 'Input', + fieldName: 'meterTypeId', + label: '抄表类型id', + }, + { + component: 'Input', + fieldName: 'objName', + label: '对象名称', + }, + { + component: 'Input', + fieldName: 'curDegrees', + label: '本期度数', + }, + { + component: 'Input', + fieldName: 'preDegrees', + label: '上期度数', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'preReadingTime', + label: '上期读表时间', + }, + { + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + fieldName: 'curReadingTime', + label: '本期读表时间', + }, + { + component: 'Input', + fieldName: 'searchValue', + label: '搜索值', + }, +]; + +// 需要使用i18n注意这里要改成getter形式 否则切换语言不会刷新 +// export const columns: () => VxeGridProps['columns'] = () => [ +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '主键', + field: 'id', + }, + { + title: '费用类型id', + field: 'itemId', + }, + { + title: '抄表类型id', + field: 'meterTypeId', + }, + { + title: '对象名称', + field: 'objName', + }, + { + title: '本期度数', + field: 'curDegrees', + }, + { + title: '上期度数', + field: 'preDegrees', + }, + { + title: '上期读表时间', + field: 'preReadingTime', + }, + { + title: '本期读表时间', + field: 'curReadingTime', + }, + { + title: '备注', + field: 'remark', + }, + { + title: '搜索值', + field: 'searchValue', + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '费用类型id', + fieldName: 'itemId', + component: 'Input', + rules: 'required', + }, + { + label: '抄表类型id', + fieldName: 'meterTypeId', + component: 'Input', + rules: 'required', + }, + { + label: '对象名称', + fieldName: 'objName', + component: 'Input', + rules: 'required', + }, + { + label: '本期度数', + fieldName: 'curDegrees', + component: 'Input', + rules: 'required', + }, + { + label: '上期度数', + fieldName: 'preDegrees', + component: 'Input', + rules: 'required', + }, + { + label: '上期读表时间', + fieldName: 'preReadingTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '本期读表时间', + fieldName: 'curReadingTime', + component: 'DatePicker', + componentProps: { + showTime: true, + format: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'YYYY-MM-DD HH:mm:ss', + }, + rules: 'required', + }, + { + label: '备注', + fieldName: 'remark', + component: 'Textarea', + }, + { + label: '搜索值', + fieldName: 'searchValue', + component: 'Input', + }, +]; diff --git a/apps/web-antd/src/views/property/costManagement/costMeterWater/index.vue b/apps/web-antd/src/views/property/costManagement/costMeterWater/index.vue new file mode 100644 index 00000000..bc79a12a --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/costMeterWater/index.vue @@ -0,0 +1,182 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/data.ts b/apps/web-antd/src/views/property/costManagement/houseCharge/data.ts new file mode 100644 index 00000000..62608784 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/data.ts @@ -0,0 +1,216 @@ +import type {FormSchemaGetter} from '#/adapter/form'; +import type {VxeGridProps} from '#/adapter/vxe-table'; +import {getDictOptions} from "#/utils/dict"; +import {renderDict} from "#/utils/render"; +import {costItemSettingList} from "#/api/property/costManagement/costItemSetting"; +import { h } from 'vue'; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'ApiSelect', + componentProps: { + api:async ()=>{ + return (await costItemSettingList({pageSize: 1000, pageNum: 1}))?.rows + }, + afterFetch: (data: { chargeItem: string; id: string }[]) => { + return data.map((item: any) => ({ + label: item.chargeItem, + value: item.id, + })); + }, + }, + fieldName: 'costItemsId', + label: '收费项目', + }, + { + component: 'Select', + fieldName: 'chargeStatus', + label: '缴费状态', + componentProps: { + options: getDictOptions('wy_fyshzt') + }, + }, +]; +export const columns: VxeGridProps['columns'] = [ + {type: 'checkbox', width: 60}, + { + title: '房屋', + field: 'roomId', + minWidth: 150, + }, + { + title: '收费项目', + field: 'costItemsId', + width: 150, + }, + { + title: '应收金额', + field: 'amountReceivable', + width: 150, + }, + { + title: '计费开始时间', + field: 'startTime', + width: 150, + }, + { + title: '计费结束时间', + field: 'endTime', + width: 150, + }, + { + title: '缴费状态', + field: 'chargeStatus', + width: 150, + slots: { + default: ({row}) => { + return renderDict(row.chargeStatus, 'wy_fyshzt') + } + } + }, + // { + // title: '状态', + // field: 'state', + // width: 150, + // slots: { + // default: ({row}) => { + // return renderDict(row.state, 'wy_fysfzt') + // } + // } + // }, + { + title: '说明', + field: 'remark', + width: 150, + }, + { + field: 'action', + fixed: 'right', + slots: {default: 'action'}, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '房屋', + fieldName: 'roomId', + component: 'TreeSelect', + componentProps: { + }, + rules: 'selectRequired', + }, + { + label: '业主', + fieldName: 'personId', + component: 'ApiSelect', + componentProps: { + }, + rules: 'selectRequired', + }, + { + label: '费用类型', + fieldName: 'costType', + component: 'Select', + componentProps: { + }, + rules: 'selectRequired', + }, + { + label: '收费项目', + fieldName: 'costItemsId', + component: 'ApiSelect', + componentProps: {}, + rules: 'selectRequired', + }, + { + label: '应收金额', + fieldName: 'amountReceivable', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '计费时间', + fieldName: 'chargeTime', + component: 'RangePicker', + componentProps: { + format: 'YYYY-MM-DD', + valueFormat: 'YYYY-MM-DD', + }, + rules: 'selectRequired', + }, + { + label: '说明', + fieldName: 'remark', + component: 'Textarea', + formItemClass: 'col-span-2', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, +]; + +export const modalSchemaUpdate: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '支付方式', + fieldName: 'payType', + component: 'Select', + componentProps: { + options:getDictOptions('wy_zffs') + }, + rules: 'selectRequired', + }, + { + label: '缴费周期', + fieldName: 'chargeCycle', + component: 'InputNumber', + componentProps: { + min:1, + precision:0, + placeholder:'请输入缴费周期(月)' + }, + suffix: () => h('span', { style: {fontSize: '0.875rem',fontWeight:500,} }, '月'), + rules: 'selectRequired', + }, +] +export const modalSchemaRefund: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '退费原因', + fieldName: 'reason', + component: 'Textarea', + formItemClass: 'col-span-2' + }, +] diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-detail.vue b/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-detail.vue new file mode 100644 index 00000000..c10c48cf --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-detail.vue @@ -0,0 +1,99 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-refund.vue b/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-refund.vue new file mode 100644 index 00000000..31daf8da --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/house-charge-refund.vue @@ -0,0 +1,147 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-add.vue b/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-add.vue new file mode 100644 index 00000000..fd8d9861 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-add.vue @@ -0,0 +1,226 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-update.vue b/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-update.vue new file mode 100644 index 00000000..620cd3ef --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/houseCharge-update.vue @@ -0,0 +1,148 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/houseCharge/index.vue b/apps/web-antd/src/views/property/costManagement/houseCharge/index.vue new file mode 100644 index 00000000..7e449bef --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/houseCharge/index.vue @@ -0,0 +1,211 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/paymentReview/data.ts b/apps/web-antd/src/views/property/costManagement/paymentReview/data.ts new file mode 100644 index 00000000..cb93ed50 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/paymentReview/data.ts @@ -0,0 +1,109 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; + +import { getDictOptions } from '#/utils/dict'; +import { renderDict } from '#/utils/render'; + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'roomNumber', + label: '房屋', + }, + { + component: 'Select', + componentProps: { + // 可选从DictEnum中获取 DictEnum.COST_REVIEW_STATUS 便于维护 + options: getDictOptions('pro_expense_type'), + }, + fieldName: 'costType', + label: '费用类型', + }, + { + component: 'Select', + componentProps: { + // 可选从DictEnum中获取 DictEnum.COST_REVIEW_STATUS 便于维护 + options: getDictOptions('cost_review_status'), + }, + fieldName: 'state', + label: '审核状态', + }, +]; + +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '房屋', + field: 'roomNumber', + }, + { + title: '费用项目', + field: 'chargeItem', + }, + { + title: '付费周期', + field: 'chargeCycle', + }, + { + title: '缴费开始时间', + field: 'startTime', + }, + { + title: '缴费结束时间', + field: 'endTime', + }, + { + title: '实付金额', + field: 'receivedAmount', + }, + { + title: '应收金额', + field: 'receivableAmount', + }, + { + title: '缴费时间', + field: 'payTime', + }, + { + title: '审核状态', + field: 'state', + slots: { + default: ({ row }) => { + // 可选从DictEnum中获取 DictEnum.COST_REVIEW_STATUS 便于维护 + return renderDict(row.state, 'cost_review_status'); + }, + }, + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '审核状态', + fieldName: 'state', + component: 'RadioGroup', + componentProps: { + options: [ + { label: '已审核', value: '1' }, + { label: '已驳回', value: '2' }, + ], + // options: getDictOptions('cost_review_status'), + }, + rules: 'required', + }, +]; diff --git a/apps/web-antd/src/views/property/costManagement/paymentReview/index.vue b/apps/web-antd/src/views/property/costManagement/paymentReview/index.vue new file mode 100644 index 00000000..91d85ef7 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/paymentReview/index.vue @@ -0,0 +1,103 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-detail.vue b/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-detail.vue new file mode 100644 index 00000000..875676fc --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-detail.vue @@ -0,0 +1,70 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-modal.vue b/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-modal.vue new file mode 100644 index 00000000..b398b1af --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/paymentReview/paymentReview-modal.vue @@ -0,0 +1,106 @@ + + + + diff --git a/apps/web-antd/src/views/property/costManagement/returnPayFee/data.ts b/apps/web-antd/src/views/property/costManagement/returnPayFee/data.ts new file mode 100644 index 00000000..1a89c3e7 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/returnPayFee/data.ts @@ -0,0 +1,103 @@ +import type { FormSchemaGetter } from '#/adapter/form'; +import type { VxeGridProps } from '#/adapter/vxe-table'; +import {getDictOptions} from "#/utils/dict"; +import {renderDict} from "#/utils/render"; + + +export const querySchema: FormSchemaGetter = () => [ + { + component: 'Input', + fieldName: 'returnNo', + label: '退款单号', + }, + { + component: 'Select', + componentProps:{ + options:getDictOptions('wy_tfshzt') + }, + fieldName: 'state', + label: '审核状态', + }, +]; +export const columns: VxeGridProps['columns'] = [ + { type: 'checkbox', width: 60 }, + { + title: '退款单号', + field: 'returnNo', + width: 180, + }, + { + title: '支付单号', + field: 'payNo', + width: 180, + }, + { + title: '支付金额', + field: 'payAcount', + width: 100, + }, + { + title: '支付时间', + field: 'payTime', + width: 180, + }, + { + title: '退款原因', + field: 'reason', + minWidth: 180, + }, + { + title: '审核状态', + field: 'state', + width: 150, + slots:{ + default:({row})=>{ + return renderDict(row.state,'wy_tfshzt') + } + } + }, + { + title: '审核意见', + field: 'remark', + width: 180, + }, + { + field: 'action', + fixed: 'right', + slots: { default: 'action' }, + title: '操作', + width: 180, + }, +]; + +export const stateOptions = [ + { label: '审核通过', value: '1' }, + { label: '审核不通过', value: '2' }, +]; + +export const modalSchema: FormSchemaGetter = () => [ + { + label: '主键', + fieldName: 'id', + component: 'Input', + dependencies: { + show: () => false, + triggerFields: [''], + }, + }, + { + label: '审核状态', + fieldName: 'state', + component: 'RadioGroup', + componentProps: { + buttonStyle: 'solid', + options: stateOptions, + }, + rules:'required' + }, + { + label: '审核意见', + fieldName: 'remark', + component: 'Textarea', + }, +]; diff --git a/apps/web-antd/src/views/property/costManagement/returnPayFee/index.vue b/apps/web-antd/src/views/property/costManagement/returnPayFee/index.vue new file mode 100644 index 00000000..3f0f2930 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/returnPayFee/index.vue @@ -0,0 +1,172 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/returnPayFee/return-pay-detail.vue b/apps/web-antd/src/views/property/costManagement/returnPayFee/return-pay-detail.vue new file mode 100644 index 00000000..4b9a2b91 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/returnPayFee/return-pay-detail.vue @@ -0,0 +1,64 @@ + + + diff --git a/apps/web-antd/src/views/property/costManagement/returnPayFee/returnPayFee-modal.vue b/apps/web-antd/src/views/property/costManagement/returnPayFee/returnPayFee-modal.vue new file mode 100644 index 00000000..0e706473 --- /dev/null +++ b/apps/web-antd/src/views/property/costManagement/returnPayFee/returnPayFee-modal.vue @@ -0,0 +1,108 @@ + + + + diff --git a/apps/web-antd/src/views/property/equipmentManagement/machine/data.ts b/apps/web-antd/src/views/property/equipmentManagement/machine/data.ts index 81762779..02a7d3d1 100644 --- a/apps/web-antd/src/views/property/equipmentManagement/machine/data.ts +++ b/apps/web-antd/src/views/property/equipmentManagement/machine/data.ts @@ -42,16 +42,16 @@ export const columns: VxeGridProps['columns'] = [ field: 'machineBrand', width:100 }, - { - title: '设备类型', - field: 'machineTypeId', - width:100 - }, - { - title: '位置详情', - field: 'locationId', - width:100 - }, + // { + // title: '设备类型', + // field: 'machineTypeId', + // width:100 + // }, + // { + // title: '位置详情', + // field: 'locationId', + // width:100 + // }, { title: '采购价格', field: 'purchasePrice', @@ -92,11 +92,11 @@ export const columns: VxeGridProps['columns'] = [ } } }, - { - title: '责任人', - field: 'personId', - width:100 - }, + // { + // title: '责任人', + // field: 'personId', + // width:100 + // }, { field: 'action', fixed: 'right', diff --git a/apps/web-antd/src/views/property/equipmentManagement/machine/index.vue b/apps/web-antd/src/views/property/equipmentManagement/machine/index.vue index 8e58bef2..896e0194 100644 --- a/apps/web-antd/src/views/property/equipmentManagement/machine/index.vue +++ b/apps/web-antd/src/views/property/equipmentManagement/machine/index.vue @@ -24,7 +24,7 @@ import MachineTypeTree from '../components/machine-type-tree.vue' import machineDetail from './machine-detail.vue' import {ref} from "vue"; -const selectTypeId = ref('') +const selectTypeId = ref([]) const formOptions: VbenFormProps = { commonConfig: { @@ -36,8 +36,8 @@ const formOptions: VbenFormProps = { schema: querySchema(), wrapperClass: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4', handleReset: async () => { - selectTypeId.value = ''; - const { formApi, reload } = tableApi; + selectTypeId.value = []; + const {formApi, reload} = tableApi; await formApi.resetForm(); const formValues = formApi.form.values; formApi.setLatestSubmissionValues(formValues); @@ -61,7 +61,11 @@ const gridOptions: VxeGridProps = { proxyConfig: { ajax: { query: async ({page}, formValues = {}) => { - formValues.machineTypeId = selectTypeId.value + if (selectTypeId.value && selectTypeId.value.length) { + formValues.machineTypeId = selectTypeId.value[0] + }else { + formValues.machineTypeId =[] + } return await machineList({ pageNum: page.currentPage, pageSize: page.pageSize, @@ -135,32 +139,32 @@ function handleDownloadExcel() {