feat: 移动端开发规范重大更新
- 🔥 完全重写 .cursor/cursorrules-mobile.md (940行) * 基于实际mobile工程Vue 3.4.21+uniapp+uview-plus架构 * 移除所有JeeSite相关内容,精准匹配实际项目 * 新增11个完整章节:技术栈、项目结构、页面开发、组件规范等 - 📚 创建完整规范文档 docs/开发文档/移动端开发规范总结.md (800+行) * 涵盖从项目架构到部署的全流程指导 * 提供可直接使用的页面和组件模板 * 包含现代CSS变量设计系统和用户体验优化 - 🔄 同步更新主配置文件 .cursorrules * 更新移动端技术栈描述 * 调整为Vue 3.4.21+uniapp+uview-plus 3.4.45架构 - 📝 完善变更记录 * 详细记录规范更新背景和技术价值 * 为后续维护提供完整历史记录 核心价值:解决规范与实际项目不匹配问题,为Cursor AI提供准确的移动端开发上下文,确保生成代码完全符合实际项目架构。
This commit is contained in:
1 parent
e8ece1b612
commit
28232d5d46
131 files changed
+17170
-5479
No files matched your search
@@ -0,0 +1,3 @@
|
||||
export * from './types';
|
||||
export * from './info';
|
||||
export * from './reservation';
|
||||
@@ -0,0 +1,77 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { VenueInfoVO, VenueInfoForm, VenueInfoQuery } from './types';
|
||||
|
||||
/**
|
||||
* 查询场地信息列表
|
||||
*/
|
||||
export const listVenueInfo = (query?: VenueInfoQuery): AxiosPromise<VenueInfoVO[]> => {
|
||||
return request({
|
||||
url: '/venue/info/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询场地信息详细
|
||||
*/
|
||||
export const getVenueInfo = (id: string | number): AxiosPromise<VenueInfoVO> => {
|
||||
return request({
|
||||
url: `/venue/info/${id}`,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增场地信息
|
||||
*/
|
||||
export const addVenueInfo = (data: VenueInfoForm) => {
|
||||
return request({
|
||||
url: '/venue/info',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改场地信息
|
||||
*/
|
||||
export const updateVenueInfo = (data: VenueInfoForm) => {
|
||||
return request({
|
||||
url: '/venue/info',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除场地信息
|
||||
*/
|
||||
export const delVenueInfo = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: `/venue/info/${id}`,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 获取可用场地列表
|
||||
*/
|
||||
export const getAvailableVenues = (): AxiosPromise<VenueInfoVO[]> => {
|
||||
return request({
|
||||
url: '/venue/info/available',
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 导出场地信息
|
||||
*/
|
||||
export const exportVenueInfo = (query: VenueInfoQuery) => {
|
||||
return request({
|
||||
url: '/venue/info/export',
|
||||
method: 'post',
|
||||
data: query
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,118 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import {
|
||||
VenueReservationVO,
|
||||
VenueReservationForm,
|
||||
VenueReservationQuery,
|
||||
ReservationApproveForm,
|
||||
ConflictCheckQuery,
|
||||
ConflictReservationVO
|
||||
} from './types';
|
||||
|
||||
/**
|
||||
* 查询场地预约列表
|
||||
*/
|
||||
export const listVenueReservation = (query?: VenueReservationQuery) => {
|
||||
return request({
|
||||
url: '/venue/reservation/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询我的预约列表
|
||||
*/
|
||||
export const listMyReservations = (query?: VenueReservationQuery) => {
|
||||
return request({
|
||||
url: '/venue/reservation/my',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询待审批预约列表
|
||||
*/
|
||||
export const listPendingReservations = (query?: VenueReservationQuery) => {
|
||||
return request({
|
||||
url: '/venue/reservation/pending',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询场地预约详细
|
||||
*/
|
||||
export const getVenueReservation = (id: string | number): AxiosPromise<VenueReservationVO> => {
|
||||
return request({
|
||||
url: `/venue/reservation/${id}`,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增场地预约
|
||||
*/
|
||||
export const addVenueReservation = (data: VenueReservationForm) => {
|
||||
return request({
|
||||
url: '/venue/reservation',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改场地预约
|
||||
*/
|
||||
export const updateVenueReservation = (data: VenueReservationForm) => {
|
||||
return request({
|
||||
url: '/venue/reservation',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除场地预约
|
||||
*/
|
||||
export const delVenueReservation = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: `/venue/reservation/${id}`,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 检查时间冲突
|
||||
*/
|
||||
export const checkTimeConflict = (query: ConflictCheckQuery): AxiosPromise<ConflictReservationVO[]> => {
|
||||
return request({
|
||||
url: '/venue/reservation/conflict',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 审批场地预约
|
||||
*/
|
||||
export const approveReservation = (data: ReservationApproveForm) => {
|
||||
return request({
|
||||
url: '/venue/reservation/approve',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 导出场地预约
|
||||
*/
|
||||
export const exportVenueReservation = (query: VenueReservationQuery) => {
|
||||
return request({
|
||||
url: '/venue/reservation/export',
|
||||
method: 'post',
|
||||
data: query
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,209 @@
|
||||
/**
|
||||
* 场地信息查询对象类型
|
||||
*/
|
||||
export interface VenueInfoQuery extends PageQuery {
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 场地编码 */
|
||||
venueCode?: string;
|
||||
/** 场地位置 */
|
||||
venueLocation?: string;
|
||||
/** 场地类型 */
|
||||
venueType?: string;
|
||||
/** 场地状态 */
|
||||
venueStatus?: string;
|
||||
/** 管理员姓名 */
|
||||
venueManagerName?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 场地信息视图对象
|
||||
*/
|
||||
export interface VenueInfoVO {
|
||||
/** 主键ID */
|
||||
id?: string | number;
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 场地编码 */
|
||||
venueCode?: string;
|
||||
/** 场地位置 */
|
||||
venueLocation?: string;
|
||||
/** 场地容量 */
|
||||
venueCapacity?: number;
|
||||
/** 场地类型 */
|
||||
venueType?: string;
|
||||
/** 场地状态 */
|
||||
venueStatus?: string;
|
||||
/** 场地描述 */
|
||||
venueDescription?: string;
|
||||
/** 场地图片 */
|
||||
venueImages?: string;
|
||||
/** 管理员ID */
|
||||
venueManagerId?: string | number;
|
||||
/** 管理员姓名 */
|
||||
venueManagerName?: string;
|
||||
/** 创建时间 */
|
||||
createTime?: string;
|
||||
/** 更新时间 */
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 场地信息表单类型
|
||||
*/
|
||||
export interface VenueInfoForm {
|
||||
/** 主键ID */
|
||||
id?: string | number;
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 场地编码 */
|
||||
venueCode?: string;
|
||||
/** 场地位置 */
|
||||
venueLocation?: string;
|
||||
/** 场地容量 */
|
||||
venueCapacity?: number;
|
||||
/** 场地类型 */
|
||||
venueType?: string;
|
||||
/** 场地状态 */
|
||||
venueStatus?: string;
|
||||
/** 场地描述 */
|
||||
venueDescription?: string;
|
||||
/** 场地图片 */
|
||||
venueImages?: string;
|
||||
/** 管理员ID */
|
||||
venueManagerId?: string | number;
|
||||
/** 管理员姓名 */
|
||||
venueManagerName?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 场地预约查询对象类型
|
||||
*/
|
||||
export interface VenueReservationQuery extends PageQuery {
|
||||
/** 场地ID */
|
||||
venueId?: string | number;
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 申请人姓名 */
|
||||
applicantName?: string;
|
||||
/** 预约日期 */
|
||||
reservationDate?: string;
|
||||
/** 预约状态 */
|
||||
reservationStatus?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 场地预约视图对象
|
||||
*/
|
||||
export interface VenueReservationVO {
|
||||
/** 主键ID */
|
||||
id?: string | number;
|
||||
/** 场地ID */
|
||||
venueId?: string | number;
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 申请人ID */
|
||||
applicantId?: string | number;
|
||||
/** 申请人姓名 */
|
||||
applicantName?: string;
|
||||
/** 申请人电话 */
|
||||
applicantPhone?: string;
|
||||
/** 预约日期 */
|
||||
reservationDate?: string;
|
||||
/** 开始时间 */
|
||||
startTime?: string;
|
||||
/** 结束时间 */
|
||||
endTime?: string;
|
||||
/** 预约目的 */
|
||||
reservationPurpose?: string;
|
||||
/** 参与人数 */
|
||||
participantCount?: number;
|
||||
/** 特殊要求 */
|
||||
specialRequirements?: string;
|
||||
/** 预约状态 */
|
||||
reservationStatus?: string;
|
||||
/** 审批备注 */
|
||||
approveRemark?: string;
|
||||
/** 审批人ID */
|
||||
approverId?: string | number;
|
||||
/** 审批人姓名 */
|
||||
approverName?: string;
|
||||
/** 审批时间 */
|
||||
approveTime?: string;
|
||||
/** 创建时间 */
|
||||
createTime?: string;
|
||||
/** 更新时间 */
|
||||
updateTime?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 场地预约表单类型
|
||||
*/
|
||||
export interface VenueReservationForm {
|
||||
/** 主键ID */
|
||||
id?: string | number;
|
||||
/** 场地ID */
|
||||
venueId?: string | number;
|
||||
/** 申请人电话 */
|
||||
applicantPhone?: string;
|
||||
/** 预约日期 */
|
||||
reservationDate?: string;
|
||||
/** 开始时间 */
|
||||
startTime?: string;
|
||||
/** 结束时间 */
|
||||
endTime?: string;
|
||||
/** 预约目的 */
|
||||
reservationPurpose?: string;
|
||||
/** 参与人数 */
|
||||
participantCount?: number;
|
||||
/** 特殊要求 */
|
||||
specialRequirements?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 预约审批表单类型
|
||||
*/
|
||||
export interface ReservationApproveForm {
|
||||
/** 预约ID */
|
||||
id?: string | number;
|
||||
/** 预约状态 */
|
||||
reservationStatus?: string;
|
||||
/** 审批备注 */
|
||||
approveRemark?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* 时间冲突检查参数
|
||||
*/
|
||||
export interface ConflictCheckQuery {
|
||||
/** 场地ID */
|
||||
venueId?: string | number;
|
||||
/** 预约日期 */
|
||||
reservationDate?: string;
|
||||
/** 开始时间 */
|
||||
startTime?: string;
|
||||
/** 结束时间 */
|
||||
endTime?: string;
|
||||
/** 排除的预约ID */
|
||||
excludeId?: string | number;
|
||||
}
|
||||
|
||||
/**
|
||||
* 冲突预约信息
|
||||
*/
|
||||
export interface ConflictReservationVO {
|
||||
/** 预约ID */
|
||||
id?: string | number;
|
||||
/** 场地名称 */
|
||||
venueName?: string;
|
||||
/** 申请人姓名 */
|
||||
applicantName?: string;
|
||||
/** 开始时间 */
|
||||
startTime?: string;
|
||||
/** 结束时间 */
|
||||
endTime?: string;
|
||||
/** 预约目的 */
|
||||
reservationPurpose?: string;
|
||||
/** 预约状态 */
|
||||
reservationStatus?: string;
|
||||
}
|
||||
Reference in new issue
Block a user