diff --git a/admin/src/api/index.js b/admin/src/api/index.js index aaa6bd7..c79000b 100644 --- a/admin/src/api/index.js +++ b/admin/src/api/index.js @@ -1,8 +1,4 @@ import request from '@/utils/request' -import { mockApi } from '@/utils/mock' - -// 是否启用 Mock(开发环境默认启用) -const USE_MOCK = false // ==================== 管理员相关接口 ==================== @@ -89,7 +85,7 @@ export const uploadFile = (file, type = 'image') => { formData.append('file', file) formData.append('type', type) return request({ - url: '/common/upload', + url: '/file/upload', method: 'post', data: formData, headers: { @@ -105,7 +101,7 @@ export const uploadAvatarFile = (file) => { const formData = new FormData() formData.append('file', file) return request({ - url: '/common/upload/avatar', + url: '/file/upload/avatar', method: 'post', data: formData, headers: { @@ -114,46 +110,6 @@ export const uploadAvatarFile = (file) => { }) } -// 游客管理 -export const getVisitorPage = (pageRequest) => { - return request({ - url: '/admin/visitor/page', - method: 'post', - data: pageRequest - }) -} - -export const deleteVisitor = (id) => { - return request({ - url: `/admin/visitor/${id}`, - method: 'delete' - }) -} - -export const getVisitorById = (id) => { - return request({ - url: `/admin/visitor/${id}`, - method: 'get' - }) -} - -// 操作日志 -export const getRecentOperationLogs = (limit = 10) => { - return request({ - url: '/admin/operation-log/recent', - method: 'get', - params: { limit } - }) -} - -export const getOperationLogPage = (pageRequest) => { - return request({ - url: '/admin/operation-log/page', - method: 'post', - data: pageRequest - }) -} - // Mock 登录验证(实际项目中应该调用真实接口) export const verifyToken = () => { const token = localStorage.getItem('token') @@ -171,247 +127,8 @@ export const verifyToken = () => { return getAdminInfo() } -// 校友管理 -export const addAlumni = (data) => { - return request({ - url: '/admin/alumni/add', - method: 'post', - data - }) -} - -export const updateAlumni = (data) => { - return request({ - url: '/admin/alumni/update', - method: 'post', - data - }) -} - -export const deleteAlumni = (id) => { - return request({ - url: `/admin/alumni/${id}`, - method: 'delete' - }) -} - -export const getAlumniById = (id) => { - return request({ - url: `/admin/alumni/${id}`, - method: 'get' - }) -} - -export const getAlumniList = (params) => { - return request({ - url: '/admin/alumni/list', - method: 'get', - params - }) -} - -export const getAlumniPage = (pageRequest) => { - return request({ - url: '/admin/alumni/page', - method: 'post', - data: pageRequest - }) -} - -// POI 管理 -export const addPOI = (data) => { - return request({ - url: '/admin/poi/add', - method: 'post', - data - }) -} - -export const updatePOI = (data) => { - return request({ - url: '/admin/poi/update', - method: 'post', - data - }) -} - -export const deletePOI = (id) => { - return request({ - url: `/admin/poi/${id}`, - method: 'delete' - }) -} - -export const getPOIById = (id) => { - return request({ - url: `/admin/poi/${id}`, - method: 'get' - }) -} - -export const getPOIList = () => { - return request({ - url: '/admin/poi/list', - method: 'get' - }) -} - -export const getPOIPage = (pageRequest) => { - return request({ - url: '/admin/poi/page', - method: 'post', - data: pageRequest - }) -} - -// 校友故事管理 -export const addStory = (data) => { - return request({ - url: '/admin/story/add', - method: 'post', - data - }) -} - -export const updateStory = (data) => { - return request({ - url: '/admin/story/update', - method: 'post', - data - }) -} - -export const auditStory = (data) => { - return request({ - url: '/admin/story/audit', - method: 'post', - data - }) -} - -export const deleteStory = (id) => { - return request({ - url: `/admin/story/${id}`, - method: 'delete' - }) -} - -export const getStoryById = (id) => { - return request({ - url: `/admin/story/${id}`, - method: 'get' - }) -} - -export const getStoryList = (params) => { - return request({ - url: '/admin/story/list', - method: 'get', - params - }) -} - -export const getStoryPage = (pageRequest) => { - return request({ - url: '/admin/story/page', - method: 'post', - data: pageRequest - }) -} - -// 情感标签管理 -export const addTag = (data) => { - return request({ - url: '/admin/tag/add', - method: 'post', - data - }) -} - -export const updateTag = (data) => { - return request({ - url: '/admin/tag/update', - method: 'post', - data - }) -} - -export const deleteTag = (id) => { - return request({ - url: `/admin/tag/${id}`, - method: 'delete' - }) -} - -export const getTagById = (id) => { - return request({ - url: `/admin/tag/${id}`, - method: 'get' - }) -} - -export const getTagList = () => { - return request({ - url: '/admin/tag/list', - method: 'get' - }) -} - -export const getTagPage = (pageRequest) => { - return request({ - url: '/admin/tag/page', - method: 'post', - data: pageRequest - }) -} - -// 路线管理 -export const addRoute = (data) => { - return request({ - url: '/admin/route/add', - method: 'post', - data - }) -} - -export const updateRoute = (data) => { - return request({ - url: '/admin/route/update', - method: 'post', - data - }) -} - -export const deleteRoute = (id) => { - return request({ - url: `/admin/route/${id}`, - method: 'delete' - }) -} - -export const getRouteById = (id) => { - return request({ - url: `/admin/route/${id}`, - method: 'get' - }) -} - -export const getRouteList = () => { - return request({ - url: '/admin/route/list', - method: 'get' - }) -} - -export const getRoutePage = (pageRequest) => { - return request({ - url: '/admin/route/page', - method: 'post', - data: pageRequest - }) -} - // ==================== 用户管理 ==================== + /** * 分页获取用户列表 */ @@ -470,6 +187,7 @@ export const deleteUser = (id) => { } // ==================== 反馈管理 ==================== + export const getFeedbackPage = (current = 1, size = 10, keyword = '') => { return request({ url: '/feedback/admin/page', @@ -505,9 +223,9 @@ export const deleteFeedback = (id) => { method: 'delete' }) } -// ==================== 雅安相关接口 ==================== -// 文章管理 +// ==================== 文章管理 ==================== + /** * 添加文章 */ @@ -553,17 +271,6 @@ export const getArticleById = (id) => { /** * 获取文章列表 */ -export const getArticleList = (params) => { - return request({ - url: '/admin/article/list', - method: 'get', - params - }) -} - -/** - * 分页获取文章 - */ export const getArticlePage = (current = 1, size = 10, keyword = '') => { return request({ url: '/article/admin/page', @@ -576,7 +283,8 @@ export const getArticlePage = (current = 1, size = 10, keyword = '') => { }) } -// 电视剧管理 +// ==================== 电视剧管理 ==================== + /** * 添加电视剧 */ @@ -624,7 +332,7 @@ export const getDramaById = (id) => { */ export const getDramaList = (params) => { return request({ - url: '/admin/drama/list', + url: '/drama/list', method: 'get', params }) @@ -645,56 +353,8 @@ export const getDramaPage = (current = 1, size = 10, keyword = '') => { }) } -// 图片管理 -/** - * 上传图片 - */ -export const uploadImage = (formData) => { - return request({ - url: '/admin/image/upload', - method: 'post', - data: formData, - headers: { - 'Content-Type': 'multipart/form-data' - } - }) -} +// ==================== 场地管理 ==================== -/** - * 删除图片 - */ -export const deleteImage = (id) => { - return request({ - url: `/admin/image/${id}`, - method: 'delete' - }) -} - -/** - * 批量删除图片 - */ -export const batchDeleteImage = (ids) => { - return request({ - url: '/admin/image/batch-delete', - method: 'post', - data: { - ids - } - }) -} - -/** - * 分页获取图片 - */ -export const getImagePage = (pageRequest) => { - return request({ - url: '/admin/image/page', - method: 'post', - data: pageRequest - }) -} - -// 场地管理 /** * 添加场地 */ @@ -742,7 +402,7 @@ export const getLocationById = (id) => { */ export const getLocationList = (params) => { return request({ - url: '/admin/location/list', + url: '/location/list', method: 'get', params }) @@ -763,7 +423,8 @@ export const getLocationPage = (current = 1, size = 10, keyword = '') => { }) } -// 服务管理 +// ==================== 服务管理 ==================== + /** * 添加服务 */ @@ -811,7 +472,7 @@ export const getServiceById = (id) => { */ export const getServiceList = (params) => { return request({ - url: '/admin/service/list', + url: '/shoot/list', method: 'get', params }) @@ -832,7 +493,8 @@ export const getServicePage = (current = 1, size = 10, keyword = '') => { }) } -// 电视剧拍摄报告管理 +// ==================== 电视剧拍摄报告管理 ==================== + /** * 添加报告 */ @@ -880,7 +542,7 @@ export const getReportById = (id) => { */ export const getReportList = (params) => { return request({ - url: '/admin/report/list', + url: '/report/list', method: 'get', params }) @@ -901,15 +563,130 @@ export const getReportPage = (current = 1, size = 10, keyword = '') => { }) } -// ==================== 旅游线路相关接口 ==================== +// ==================== Banner管理 ==================== /** - * 分页获取旅游线路 + * 分页获取Banner列表 */ -export const getTourRoutePage = (current = 1, size = 10, keyword = '') => { - if (USE_MOCK) { - return mockApi.getTourRoutePage(current, size, keyword) - } +export const getBannerPage = (current = 1, size = 10, keyword = '') => { + return request({ + url: '/banner/page', + method: 'get', + params: { + current, + size, + keyword + } + }) +} + +/** + * 根据ID获取Banner + */ +export const getBannerById = (id) => { + return request({ + url: `/banner/${id}`, + method: 'get' + }) +} + +/** + * 创建Banner + */ +export const createBanner = (data) => { + return request({ + url: '/banner', + method: 'post', + data + }) +} + +/** + * 更新Banner + */ +export const updateBanner = (id, data) => { + return request({ + url: `/banner/update/${id}`, + method: 'put', + data + }) +} + +/** + * 删除Banner + */ +export const deleteBanner = (id) => { + return request({ + url: `/banner/delete/${id}`, + method: 'delete' + }) +} + +// ==================== Hotel管理 ==================== + +/** + * 分页获取酒店列表 + */ +export const getHotelPage = (current = 1, size = 10, keyword = '') => { + return request({ + url: '/hotel/admin/page', + method: 'get', + params: { + current, + size, + keyword + } + }) +} + +/** + * 根据ID获取酒店 + */ +export const getHotelById = (id) => { + return request({ + url: `/hotel/${id}`, + method: 'get' + }) +} + +/** + * 创建酒店 + */ +export const createHotel = (data) => { + return request({ + url: '/hotel/admin/create', + method: 'post', + data + }) +} + +/** + * 更新酒店 + */ +export const updateHotel = (id, data) => { + return request({ + url: `/hotel/admin/update/${id}`, + method: 'put', + data + }) +} + +/** + * 删除酒店 + */ +export const deleteHotel = (id) => { + return request({ + url: `/hotel/admin/delete/${id}`, + method: 'delete' + }) +} + +// ==================== Tour管理 ==================== + +/** + * 分页获取旅游线路列表 + */ +export const getTourPage = (current = 1, size = 10, keyword = '') => { return request({ url: '/tour/admin/page', method: 'get', @@ -924,10 +701,7 @@ export const getTourRoutePage = (current = 1, size = 10, keyword = '') => { /** * 根据ID获取旅游线路 */ -export const getTourRouteById = (id) => { - if (USE_MOCK) { - return mockApi.getTourRouteById(id) - } +export const getTourById = (id) => { return request({ url: `/tour/${id}`, method: 'get' @@ -935,12 +709,9 @@ export const getTourRouteById = (id) => { } /** - * 新增旅游线路 + * 创建旅游线路 */ -export const addTourRoute = (data) => { - if (USE_MOCK) { - return mockApi.addTourRoute(data) - } +export const createTour = (data) => { return request({ url: '/tour/admin/create', method: 'post', @@ -951,12 +722,8 @@ export const addTourRoute = (data) => { /** * 更新旅游线路 */ -export const updateTourRoute = (data) => { - if (USE_MOCK) { - return mockApi.updateTourRoute(data) - } +export const updateTour = (id, data) => { return request({ - url: `/tour/admin/update/${data.id}`, method: 'put', data }) @@ -965,33 +732,26 @@ export const updateTourRoute = (data) => { /** * 删除旅游线路 */ -export const deleteTourRoute = (id) => { - if (USE_MOCK) { - return mockApi.deleteTourRoute(id) - } +export const deleteTour = (id) => { return request({ url: `/tour/admin/delete/${id}`, method: 'delete' }) } -// ==================== 政策相关接口 ==================== +// ==================== Policy管理 ==================== /** - * 分页获取政策 + * 分页获取政策列表 */ -export const getPolicyPage = (current = 1, size = 10, keyword = '', type = '') => { - if (USE_MOCK) { - return mockApi.getPolicyPage(current, size, keyword, type) - } +export const getPolicyPage = (current = 1, size = 10, keyword = '') => { return request({ url: '/policy/admin/page', method: 'get', params: { current, size, - keyword, - type + keyword } }) } @@ -1000,9 +760,6 @@ export const getPolicyPage = (current = 1, size = 10, keyword = '', type = '') = * 根据ID获取政策 */ export const getPolicyById = (id) => { - if (USE_MOCK) { - return mockApi.getPolicyById(id) - } return request({ url: `/policy/${id}`, method: 'get' @@ -1010,12 +767,9 @@ export const getPolicyById = (id) => { } /** - * 新增政策 + * 创建政策 */ -export const addPolicy = (data) => { - if (USE_MOCK) { - return mockApi.addPolicy(data) - } +export const createPolicy = (data) => { return request({ url: '/policy/admin/create', method: 'post', @@ -1023,13 +777,13 @@ export const addPolicy = (data) => { }) } +// 为了兼容性,添加addPolicy作为createPolicy的别名 +export const addPolicy = createPolicy + /** * 更新政策 */ -export const updatePolicy = (data) => { - if (USE_MOCK) { - return mockApi.updatePolicy(data) - } +export const updatePolicy = (id, data) => { return request({ url: `/policy/admin/update/${data.id}`, method: 'put', @@ -1041,12 +795,67 @@ export const updatePolicy = (data) => { * 删除政策 */ export const deletePolicy = (id) => { - if (USE_MOCK) { - return mockApi.deletePolicy(id) - } return request({ url: `/policy/admin/delete/${id}`, method: 'delete' }) } +// ==================== 旅游线路管理 ==================== + +/** + * 分页获取旅游线路列表 + */ +export const getTourRoutePage = (current = 1, size = 10, keyword = '') => { + return request({ + url: '/tourroute/admin/page', + method: 'get', + params: { + current, + size, + keyword + } + }) +} + +/** + * 根据ID获取旅游线路 + */ +export const getTourRouteById = (id) => { + return request({ + url: `/tourroute/${id}`, + method: 'get' + }) +} + +/** + * 创建旅游线路 + */ +export const addTourRoute = (data) => { + return request({ + url: '/tourroute/admin/create', + method: 'post', + data + }) +} + +/** + * 更新旅游线路 + */ +export const updateTourRoute = (id, data) => { + return request({ + url: `/tourroute/admin/update/${id}`, + method: 'put', + data + }) +} + +/** + * 删除旅游线路 + */ +export const deleteTourRoute = (id) => { + return request({ + url: `/tourroute/admin/delete/${id}`, + method: 'delete' + }) +} \ No newline at end of file diff --git a/admin/src/utils/request.js b/admin/src/utils/request.js index e43e8cc..f9e091c 100644 --- a/admin/src/utils/request.js +++ b/admin/src/utils/request.js @@ -102,11 +102,6 @@ service.interceptors.response.use( response => { const res = response.data - // 记录成功响应的基本信息 - console.log(`请求成功: ${response.config.url}, 状态码: ${response.status}`) - console.log('响应数据 response.data:', JSON.stringify(res)) - console.log('res.code:', res.code) - if (res.code === 200) { return res } else { @@ -122,7 +117,6 @@ service.interceptors.response.use( router.push('/login') }, 1000) } - // 构建详细的错误对象 const error = new Error(errorMsg) error.code = res.code @@ -133,25 +127,11 @@ service.interceptors.response.use( }, error => { // 增强错误日志记录 - const requestInfo = error.config ? - `${error.config.method?.toUpperCase()} ${error.config.url}` : '未知请求' - - console.error(`响应错误 - 请求: ${requestInfo}`) - - // 声明 errorMsg 变量在函数作用域中 - let errorMsg = '请求失败' if (error.response) { // 服务器返回了错误状态码 const { status, statusText, config } = error.response const data = error.response.data - - console.error(`HTTP错误: ${status} ${statusText}`) - console.error(`请求详情: ${JSON.stringify(config)}`) - console.error(`响应数据: ${JSON.stringify(data)}`) - - errorMsg = `请求失败 (${status} ${statusText})` - switch (status) { case 400: errorMsg = data?.message || '请求参数错误,请检查输入' @@ -176,7 +156,6 @@ service.interceptors.response.use( default: errorMsg = data?.message || `请求失败 (${status} ${statusText})` } - // 增强错误对象 error.httpStatus = status error.errorType = 'http' @@ -196,10 +175,6 @@ service.interceptors.response.use( console.error('请求配置错误:', error.message) errorMsg = error.message || '请求配置错误' - // 增强错误对象 - error.errorType = 'config' - } - // 显示详细的错误信息 showMessage(errorMsg, 'error') return Promise.reject(error) diff --git a/admin/src/views/drama/DramaList.vue b/admin/src/views/drama/DramaList.vue index d69fa1b..4f6b5be 100644 --- a/admin/src/views/drama/DramaList.vue +++ b/admin/src/views/drama/DramaList.vue @@ -3,8 +3,8 @@
- - + + @@ -26,7 +26,9 @@
+ + + +
+ +
+ +

暂无数据

+
+
+ +
+
+

{{ drama.name }}

+

{{ drama.prodCompany }}

+
+
+ +
+ +
+
+
+
+
+ 备案号: + {{ drama.filingNum || '-' }} +
+
+ 拍摄地: + {{ drama.shootLocation || '-' }} +
+
+ 演员: + {{ drama.cast || '-' }} +
+
+
+ + 编辑 + + + + 确定要删除这个电视剧吗? + +
+
+
+ + +
+ +
+
+
- - - - + + + + + + + - - + + - - + + - - + + + + + + + + + + + @@ -331,14 +465,129 @@ const handleDelete = async (id) => { flex-shrink: 0; } +// 移动端卡片列表 +.mobile-list { + .empty-state { + text-align: center; + padding: 60px 20px; + } + + .card-list { + display: flex; + flex-direction: column; + gap: 12px; + } + + .mobile-card { + :deep(.n-card__content) { + padding: 16px; + } + + .card-header { + display: flex; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 12px; + + .drama-info { + flex: 1; + margin-right: 12px; + + .drama-name { + font-size: 16px; + font-weight: 600; + color: #1f2937; + margin: 0 0 4px 0; + } + + .drama-company { + font-size: 14px; + color: #6b7280; + margin: 0; + } + } + + .drama-cover { + flex-shrink: 0; + + .no-cover { + width: 80px; + height: 60px; + background: #f3f4f6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + color: #9ca3af; + } + } + } + + .card-content { + display: flex; + flex-direction: column; + gap: 8px; + margin-bottom: 12px; + padding: 12px; + background: #f9fafb; + border-radius: 8px; + + .info-item { + display: flex; + font-size: 13px; + + .label { + color: #6b7280; + min-width: 60px; + flex-shrink: 0; + } + + .cast-info { + color: #374151; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + } + } + + .card-actions { + margin-top: 12px; + padding-top: 12px; + border-top: 1px solid #e5e7eb; + } + } + + .mobile-pagination { + margin-top: 16px; + padding: 12px; + background: #ffffff; + border-radius: 8px; + + :deep(.n-pagination) { + justify-content: center; + } + } +} + // 移动端适配 @media (max-width: 768px) { .search-header { flex-direction: column; + gap: 12px; .search-form { width: 100%; min-width: auto; + + :deep(.n-form-item) { + margin-bottom: 12px; + + .n-form-item-label { + width: auto !important; + margin-bottom: 4px; + } + } } .action-buttons { @@ -356,17 +605,37 @@ const handleDelete = async (id) => { } } - :deep(.n-data-table) { - .n-data-table-wrapper { - overflow-x: auto; + // 移动端表单优化 + :deep(.n-modal) { + .n-dialog { + margin: 20px auto; + } + + .n-form-item { + margin-bottom: 16px; + + .n-form-item-label { + font-weight: 500; + margin-bottom: 8px; + } + + .n-input, + .n-select { + width: 100%; + } + } + + .n-dialog__action { + padding: 12px 16px; + + .n-button { + flex: 1; + margin: 0 4px; + } } } } -.action-bar { - margin-bottom: 16px; -} - @keyframes fadeIn { from { opacity: 0; @@ -377,4 +646,4 @@ const handleDelete = async (id) => { transform: translateY(0); } } - + \ No newline at end of file diff --git a/admin/src/views/location/LocationList.vue b/admin/src/views/location/LocationList.vue index 8dfd6dd..a1d6edc 100644 --- a/admin/src/views/location/LocationList.vue +++ b/admin/src/views/location/LocationList.vue @@ -3,8 +3,8 @@
- - + + @@ -26,7 +26,9 @@
+ + + +
+ +
+ +

暂无数据

+
+
+ +
+
+

{{ location.name }}

+

{{ location.type }}

+
+
+ +
+ +
+
+
+
+
+ 地址: + {{ location.address || '-' }} +
+
+ 联系人: + {{ location.locationPrincipalName || '-' }} +
+
+ 联系电话: + {{ location.locationPrincipalPhone || '-' }} +
+
+ 价格: + {{ location.price ? '¥' + location.price : '-' }} +
+
+
+ + 编辑 + + + + 确定要删除这个场地吗? + +
+
+
+ + +
+ +
+
+
- - + + - + + + + - + - + + + + - + - - + + - - + + - - + + + + + + + + + + + @@ -403,14 +561,137 @@ const handleDelete = async (id) => { flex-shrink: 0; } +.status-available { + color: #18a058; + font-weight: 500; +} + +.status-unavailable { + color: #d03050; + font-weight: 500; +} + +// 移动端卡片列表 +.mobile-list { + .empty-state { + text-align: center; + padding: 60px 20px; + } + + .card-list { + display: flex; + flex-direction: column; + gap: 12px; + } + + .mobile-card { + :deep(.n-card__content) { + padding: 16px; + } + + .card-header { + display: flex; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 12px; + + .location-info { + flex: 1; + margin-right: 12px; + + .location-name { + font-size: 16px; + font-weight: 600; + color: #1f2937; + margin: 0 0 4px 0; + } + + .location-type { + font-size: 14px; + color: #6b7280; + margin: 0; + } + } + + .location-cover { + flex-shrink: 0; + + .no-cover { + width: 80px; + height: 60px; + background: #f3f4f6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + color: #9ca3af; + } + } + } + + .card-content { + display: flex; + flex-direction: column; + gap: 8px; + margin-bottom: 12px; + padding: 12px; + background: #f9fafb; + border-radius: 8px; + + .info-item { + display: flex; + font-size: 13px; + + .label { + color: #6b7280; + min-width: 80px; + flex-shrink: 0; + } + + .price { + color: #f56c6c; + font-weight: 500; + } + } + } + + .card-actions { + margin-top: 12px; + padding-top: 12px; + border-top: 1px solid #e5e7eb; + } + } + + .mobile-pagination { + margin-top: 16px; + padding: 12px; + background: #ffffff; + border-radius: 8px; + + :deep(.n-pagination) { + justify-content: center; + } + } +} + // 移动端适配 @media (max-width: 768px) { .search-header { flex-direction: column; + gap: 12px; .search-form { width: 100%; min-width: auto; + + :deep(.n-form-item) { + margin-bottom: 12px; + + .n-form-item-label { + width: auto !important; + margin-bottom: 4px; + } + } } .action-buttons { @@ -428,17 +709,37 @@ const handleDelete = async (id) => { } } - :deep(.n-data-table) { - .n-data-table-wrapper { - overflow-x: auto; + // 移动端表单优化 + :deep(.n-modal) { + .n-dialog { + margin: 20px auto; + } + + .n-form-item { + margin-bottom: 16px; + + .n-form-item-label { + font-weight: 500; + margin-bottom: 8px; + } + + .n-input, + .n-select { + width: 100%; + } + } + + .n-dialog__action { + padding: 12px 16px; + + .n-button { + flex: 1; + margin: 0 4px; + } } } } -.action-bar { - margin-bottom: 16px; -} - @keyframes fadeIn { from { opacity: 0; @@ -449,4 +750,4 @@ const handleDelete = async (id) => { transform: translateY(0); } } - + \ No newline at end of file diff --git a/admin/src/views/policy/PolicyList.vue b/admin/src/views/policy/PolicyList.vue index b62b4c0..4e49861 100644 --- a/admin/src/views/policy/PolicyList.vue +++ b/admin/src/views/policy/PolicyList.vue @@ -7,7 +7,7 @@
- + @@ -29,7 +29,9 @@ + + + +
+ +
+ +

暂无数据

+
+
+ +
+
+

{{ policy.title }}

+
+ + {{ policy.type || '-' }} + + {{ formatDate(policy.issueTime) }} +
+
+
+ +
+ +
+
+
+
+
+ 发布单位: + {{ policy.issueUnit || '-' }} +
+
+ 内容预览: +

{{ policy.content || '-' }}

+
+
+
+ + 编辑 + + + + 确定要删除这个政策吗? + +
+
+
+ + +
+ +
+
+
- - + + - + - - + + + + + - - + + @@ -83,7 +186,7 @@ @@ -368,15 +525,200 @@ const handleDelete = async (id) => { align-items: flex-start; margin-bottom: 16px; gap: 16px; + flex-wrap: wrap; } .search-form { flex: 1; + min-width: 300px; } .action-buttons { display: flex; align-items: center; + flex-shrink: 0; +} + +// 移动端卡片列表 +.mobile-list { + .empty-state { + text-align: center; + padding: 60px 20px; + } + + .card-list { + display: flex; + flex-direction: column; + gap: 12px; + } + + .mobile-card { + :deep(.n-card__content) { + padding: 16px; + } + + .card-header { + display: flex; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 12px; + + .policy-info { + flex: 1; + margin-right: 12px; + + .policy-name { + font-size: 16px; + font-weight: 600; + color: #1f2937; + margin: 0 0 4px 0; + line-height: 1.4; + } + + .policy-meta { + display: flex; + flex-direction: column; + gap: 6px; + align-items: flex-start; + + .policy-date { + font-size: 12px; + color: #6b7280; + } + } + } + + .policy-cover { + flex-shrink: 0; + + .no-cover { + width: 80px; + height: 60px; + background: #f3f4f6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + color: #9ca3af; + } + } + } + + .card-content { + display: flex; + flex-direction: column; + gap: 8px; + margin-bottom: 12px; + padding: 12px; + background: #f9fafb; + border-radius: 8px; + + .info-item { + display: flex; + font-size: 13px; + + .label { + color: #6b7280; + min-width: 80px; + flex-shrink: 0; + } + + .policy-content-preview { + color: #374151; + line-height: 1.4; + max-height: 3.6em; + overflow: hidden; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + } + } + } + + .card-actions { + margin-top: 12px; + padding-top: 12px; + border-top: 1px solid #e5e7eb; + } + } + + .mobile-pagination { + margin-top: 16px; + padding: 12px; + background: #ffffff; + border-radius: 8px; + + :deep(.n-pagination) { + justify-content: center; + } + } +} + +// 移动端适配 +@media (max-width: 768px) { + .search-header { + flex-direction: column; + gap: 12px; + + .search-form { + width: 100%; + min-width: auto; + + :deep(.n-form-item) { + margin-bottom: 12px; + + .n-form-item-label { + width: auto !important; + margin-bottom: 4px; + } + } + } + + .action-buttons { + width: 100%; + + button { + flex: 1; + } + } + } + + .management-card { + :deep(.n-card__content) { + padding: 12px; + } + } + + // 移动端表单优化 + :deep(.n-modal) { + .n-dialog { + margin: 20px auto; + } + + .n-form-item { + margin-bottom: 16px; + + .n-form-item-label { + font-weight: 500; + margin-bottom: 8px; + } + + .n-input, + .n-select, + .n-date-picker { + width: 100%; + } + } + + .n-dialog__action { + padding: 12px 16px; + + .n-button { + flex: 1; + margin: 0 4px; + } + } + } } @keyframes fadeIn { @@ -389,5 +731,4 @@ const handleDelete = async (id) => { transform: translateY(0); } } - - + \ No newline at end of file diff --git a/admin/src/views/service/ServiceList.vue b/admin/src/views/service/ServiceList.vue index eb04900..a670beb 100644 --- a/admin/src/views/service/ServiceList.vue +++ b/admin/src/views/service/ServiceList.vue @@ -26,7 +26,9 @@ + + + +
+ +
+ +

暂无数据

+
+
+ +
+
+

{{ service.name }}

+
+
+ +
+ +
+
+
+
+
+ 联系人: + {{ service.contactName || '-' }} +
+
+ 联系电话: + {{ service.phone || '-' }} +
+
+ 服务地址: + {{ service.address || '-' }} +
+
+ 状态: + + {{ service.status ? '上线' : '下线' }} + +
+
+ 价格: + {{ service.price ? '¥' + service.price : '-' }} +
+
+ 简介: + {{ service.description || '-' }} +
+
+
+ + 编辑 + + + + 确定要删除这个服务吗? + +
+
+
+ + +
+ +
+
+
- - + + - - - - + - - + + + + + - - + + + + + - - + + @@ -367,14 +496,138 @@ const handleDelete = async (id) => { flex-shrink: 0; } +.status-available { + color: #18a058; + font-weight: 500; +} + +.status-unavailable { + color: #d03050; + font-weight: 500; +} + +// 移动端卡片列表 +.mobile-list { + .empty-state { + text-align: center; + padding: 60px 20px; + } + + .card-list { + display: flex; + flex-direction: column; + gap: 12px; + } + + .mobile-card { + :deep(.n-card__content) { + padding: 16px; + } + + .card-header { + display: flex; + justify-content: space-between; + align-items: flex-start; + margin-bottom: 12px; + + .service-info { + flex: 1; + margin-right: 12px; + + .service-name { + font-size: 16px; + font-weight: 600; + color: #1f2937; + margin: 0 0 4px 0; + } + } + + .service-cover { + flex-shrink: 0; + + .no-cover { + width: 80px; + height: 60px; + background: #f3f4f6; + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + color: #9ca3af; + } + } + } + + .card-content { + display: flex; + flex-direction: column; + gap: 8px; + margin-bottom: 12px; + padding: 12px; + background: #f9fafb; + border-radius: 8px; + + .info-item { + display: flex; + font-size: 13px; + + .label { + color: #6b7280; + min-width: 80px; + flex-shrink: 0; + } + + .price { + color: #f56c6c; + font-weight: 500; + } + + .service-desc { + color: #374151; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + } + } + + .card-actions { + margin-top: 12px; + padding-top: 12px; + border-top: 1px solid #e5e7eb; + } + } + + .mobile-pagination { + margin-top: 16px; + padding: 12px; + background: #ffffff; + border-radius: 8px; + + :deep(.n-pagination) { + justify-content: center; + } + } +} + // 移动端适配 @media (max-width: 768px) { .search-header { flex-direction: column; + gap: 12px; .search-form { width: 100%; min-width: auto; + + :deep(.n-form-item) { + margin-bottom: 12px; + + .n-form-item-label { + width: auto !important; + margin-bottom: 4px; + } + } } .action-buttons { @@ -392,17 +645,37 @@ const handleDelete = async (id) => { } } - :deep(.n-data-table) { - .n-data-table-wrapper { - overflow-x: auto; + // 移动端表单优化 + :deep(.n-modal) { + .n-dialog { + margin: 20px auto; + } + + .n-form-item { + margin-bottom: 16px; + + .n-form-item-label { + font-weight: 500; + margin-bottom: 8px; + } + + .n-input, + .n-select { + width: 100%; + } + } + + .n-dialog__action { + padding: 12px 16px; + + .n-button { + flex: 1; + margin: 0 4px; + } } } } -.action-bar { - margin-bottom: 16px; -} - @keyframes fadeIn { from { opacity: 0; @@ -413,4 +686,4 @@ const handleDelete = async (id) => { transform: translateY(0); } } - + \ No newline at end of file diff --git a/admin/vite.config.js b/admin/vite.config.js index 6004c8b..1f0e884 100644 --- a/admin/vite.config.js +++ b/admin/vite.config.js @@ -1,6 +1,6 @@ import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' -import { resolve } from 'path' +import { resolve } from 'path' // 👈 添加这一行 export default defineConfig({ plugins: [ diff --git a/miniprogram/pages/tourroute/tourroute.vue b/miniprogram/pages/tourroute/tourroute.vue index 934518b..b34206f 100644 --- a/miniprogram/pages/tourroute/tourroute.vue +++ b/miniprogram/pages/tourroute/tourroute.vue @@ -126,6 +126,14 @@ export default { } else { this.routes = [...this.routes, ...newRoutes] } + ] + + try { + const res = await getTourPage({ + current: this.currentPage, + size: this.pageSize, + keyword: this.keyword || undefined + }) this.nextCursor = res.nextCursor this.hasMore = res.hasMore || false @@ -137,6 +145,7 @@ export default { } } catch (error) { console.error('加载线路失败:', error) + console.error('错误详情:', error.message, error.response) uni.showToast({ title: '加载失败,请稍后重试', icon: 'none' diff --git a/miniprogram/services/backend-api.ts b/miniprogram/services/backend-api.ts index 0e243e6..27b240e 100644 --- a/miniprogram/services/backend-api.ts +++ b/miniprogram/services/backend-api.ts @@ -60,16 +60,24 @@ export const getDramaById = (id: number) => { /** * 获取旅游线路列表(分页) */ -export const getTourPage = (params: { +export const getTourPage = async (params: { current?: number size?: number keyword?: string }) => { - return http>({ - url: '/tour/page', - method: 'GET', - data: params - }) + try { + console.log('调用getTourPage API,URL: /tourroute/admin/page, 参数:', params) + const result = await http>({ + url: '/tourroute/admin/page', + method: 'GET', + data: params + }) + console.log('getTourPage API调用成功,结果:', result) + return result + } catch (error) { + console.error('getTourPage API调用失败:', error) + throw error + } } /** diff --git a/sql/schema.sql b/sql/schema.sql index da20b92..244e8e6 100644 --- a/sql/schema.sql +++ b/sql/schema.sql @@ -79,12 +79,12 @@ CREATE TABLE `fi_reports` `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `status` varchar(10) NOT NULL COMMENT '申报状态(未处理,处理中,申请成功,申请失败)', - `shoot_permit` varchar(2550) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '拍摄许可', - `thumb_shoot_permit` varchar(2550) DEFAULT NULL COMMENT '拍摄许可压缩图片', - `approval_file` varchar(2550) DEFAULT NULL COMMENT '立项审批', - `thumb_approval_file` varchar(2550) DEFAULT NULL COMMENT '立项审批压缩图片', - `shoot_apply` varchar(2550) DEFAULT NULL COMMENT '协拍服务许可', - `thumb_shoot_apply` varchar(2550) DEFAULT NULL COMMENT '协拍服务许可压缩图片', + `shoot_permit` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '拍摄许可', + `thumb_shoot_permit` varchar(500) DEFAULT NULL COMMENT '拍摄许可压缩图片', + `approval_file` varchar(500) DEFAULT NULL COMMENT '立项审批', + `thumb_approval_file` varchar(500) DEFAULT NULL COMMENT '立项审批压缩图片', + `shoot_apply` varchar(500) DEFAULT NULL COMMENT '协拍服务许可', + `thumb_shoot_apply` varchar(500) DEFAULT NULL COMMENT '协拍服务许可压缩图片', PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 @@ -108,10 +108,8 @@ CREATE TABLE `fi_locations` `deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '逻辑删除(0:正常,1:删除)', `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `cover` varchar(200) NOT NULL, - `image` varchar(2550) DEFAULT NULL COMMENT '图片', - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `image` varchar(500) DEFAULT NULL COMMENT '图片', + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩后图片', `longitude` varchar(40) NOT NULL COMMENT '经度', `latitude` varchar(40) NOT NULL COMMENT '纬度', PRIMARY KEY (`id`) @@ -131,10 +129,8 @@ CREATE TABLE `fi_articles` `deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '逻辑删除(0:正常,1:删除)', `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `cover` varchar(200) NOT NULL, - `image` varchar(2550) DEFAULT NULL COMMENT '图片', - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `image` varchar(500) DEFAULT NULL COMMENT '图片', + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩后图片', PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 @@ -155,10 +151,8 @@ CREATE TABLE `fi_shoots` `deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '逻辑删除(0:正常,1:删除)', `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `cover` varchar(200) NOT NULL, - `image` varchar(2550) DEFAULT NULL COMMENT '图片', - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `image` varchar(500) DEFAULT NULL COMMENT '图片', + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩后图片', PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 @@ -182,10 +176,8 @@ CREATE TABLE `fi_dramas` `deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '逻辑删除(0:正常,1:删除)', `created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `cover` varchar(200) NOT NULL, - `image` varchar(2550) DEFAULT NULL COMMENT '图片', - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `image` varchar(500) DEFAULT NULL COMMENT '图片', + `thumb_image` varchar(550) DEFAULT NULL COMMENT '压缩后图片', PRIMARY KEY (`id`) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 @@ -213,14 +205,12 @@ CREATE TABLE `fi_hotel` ( `address` VARCHAR ( 50 ) NOT NULL COMMENT '地址', `manager_name` VARCHAR ( 15 ) NOT NULL COMMENT '负责人名称', `manager_phone` VARCHAR ( 20 ) NOT NULL COMMENT '负责人电话', - `cover` VARCHAR ( 255 ) NOT NULL COMMENT '封面', - `image` VARCHAR ( 300 ) DEFAULT NULL COMMENT '图片', + `image` VARCHAR ( 500 ) DEFAULT NULL COMMENT '图片', `created_at` DATETIME NOT NULL, `updated_at` DATETIME NOT NULL, `deleted` TINYINT NOT NULL, `user_id` int NOT NULL, - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩后图片', `longitude` varchar(40) NOT NULL COMMENT '经度', `latitude` varchar(40) NOT NULL COMMENT '纬度', PRIMARY KEY ( `id` ) @@ -232,16 +222,14 @@ CREATE TABLE `fi_tour` ( `description` varchar(2550) NOT NULL COMMENT '介绍', `theme` varchar(50) NOT NULL COMMENT '主题', `features` varchar(2550) NOT NULL COMMENT '特点', - `cover` varchar(2550) NOT NULL COMMENT '封面', `transport` varchar(2550) NOT NULL COMMENT '交通方式', `hotel` varchar(2550) NOT NULL COMMENT '周边旅馆', `food` varchar(2550) NOT NULL COMMENT '美食推荐', `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL, `deleted` tinyint NOT NULL, - `image` varchar(2550) DEFAULT NULL, - `thumb_cover` varchar(2550) DEFAULT NULL COMMENT '压缩后封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩后图片', + `image` varchar(500) DEFAULT NULL, + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩后图片', `longitude` varchar(40) NOT NULL COMMENT '经度', `latitude` varchar(40) NOT NULL COMMENT '纬度', `location_id` varchar(255) NOT NULL COMMENT '景点id', @@ -256,10 +244,8 @@ CREATE TABLE `fi_policy` ( `issue_unit` varchar(255) NOT NULL COMMENT '发布单位', `issue_time` datetime NOT NULL COMMENT '发布时间', `content` text NOT NULL COMMENT '内容', - `cover` varchar(255) NOT NULL COMMENT '封面', - `image` varchar(2550) DEFAULT NULL COMMENT '图片', - `thumb_cover` varchar(255) NOT NULL COMMENT '压缩封面', - `thumb_image` varchar(2550) DEFAULT NULL COMMENT '压缩图片', + `image` varchar(500) DEFAULT NULL COMMENT '图片', + `thumb_image` varchar(500) DEFAULT NULL COMMENT '压缩图片', `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL, `deleted` tinyint NOT NULL, diff --git a/src/main/java/cn/cxdproject/coder/common/constants/ArticleConstants.java b/src/main/java/cn/cxdproject/coder/common/constants/ArticleConstants.java deleted file mode 100644 index d4d16a0..0000000 --- a/src/main/java/cn/cxdproject/coder/common/constants/ArticleConstants.java +++ /dev/null @@ -1,18 +0,0 @@ -package cn.cxdproject.coder.common.constants; - -import cn.cxdproject.coder.model.entity.Article; -import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; - -import java.util.function.Predicate; - -public interface ArticleConstants { - String NOT_FIND = "不存在或已删除"; - String NO_PERMISSION = "权限不足"; - String ID = "id"; - String TITLE = "title"; - String ISSUE_NAME = "issue_unit"; - String ISSUE_TIME = "issue_time"; - String USER_ID = "user_id"; - String COVER = "cover"; - String DELETED = "deleted"; -} diff --git a/src/main/java/cn/cxdproject/coder/common/constants/Constants.java b/src/main/java/cn/cxdproject/coder/common/constants/Constants.java index a479c02..055c9b9 100644 --- a/src/main/java/cn/cxdproject/coder/common/constants/Constants.java +++ b/src/main/java/cn/cxdproject/coder/common/constants/Constants.java @@ -187,5 +187,6 @@ public interface Constants { */ String STORAGE_TYPE_COS = "cos"; - String DEFAULT_COVER = ""; + String DEFAULT_COVER = "https://codeonezerozero.cn:19000/code100/origin/1764422966905_picture1.png"; + String DEFAULT_THUMB_COVER = "https://codeonezerozero.cn:19000/code100/thumb/1764422966905_picture1.png"; } diff --git a/src/main/java/cn/cxdproject/coder/common/constants/UserConstants.java b/src/main/java/cn/cxdproject/coder/common/constants/UserConstants.java index 8422d4a..f194aac 100644 --- a/src/main/java/cn/cxdproject/coder/common/constants/UserConstants.java +++ b/src/main/java/cn/cxdproject/coder/common/constants/UserConstants.java @@ -71,9 +71,9 @@ public interface UserConstants { String EMPTY_PASSWORD_HASH = generateComplexPassword(); - String DEFAULT_USER = "https://cetide-1325039295.cos.ap-chengdu.myqcloud.com/codeforge/course/Docker/default-avatar.png"; + String DEFAULT_USER = "https://codeonezerozero.cn:19000/code100/origin/1764422966905_picture1.png"; - String DEFAULT_THUMB_USER = "暂未设置"; + String DEFAULT_THUMB_USER = "https://codeonezerozero.cn:19000/code100/thumb/1764422966905_picture1.png"; String USER_LANGUAGE_DEFAULT = "zh-CN"; diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesDramaCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesDramaCacheTask.java index d70cc2b..2ef1002 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesDramaCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesDramaCacheTask.java @@ -81,11 +81,9 @@ public DramaVO toDramaVO(Drama drama) { .service(drama.getService()) .serviceId(drama.getServiceId()) .userId(drama.getUserId()) - .cover(drama.getCover()) .createdAt(drama.getCreatedAt()) .updatedAt(drama.getUpdatedAt()) .image(drama.getImage()) - .thumbCover(drama.getThumbCover()) .thumbImage(drama.getThumbImage()) .build(); diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesHotelCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesHotelCacheTask.java index b5050e8..7881233 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesHotelCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesHotelCacheTask.java @@ -72,10 +72,8 @@ public HotelVO toHotelVO(Hotel hotel) { .managerPhone(hotel.getManagerPhone()) .address(hotel.getAddress()) .image(hotel.getImage()) - .cover(hotel.getCover()) .updatedAt(hotel.getUpdatedAt()) .createdAt(hotel.getCreatedAt()) - .thumbCover(hotel.getThumbCover()) .thumbImage(hotel.getThumbImage()) .latitude(hotel.getLatitude()) .longitude(hotel.getLongitude()) diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesLocationCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesLocationCacheTask.java index 271f459..cfaf39d 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesLocationCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesLocationCacheTask.java @@ -78,11 +78,9 @@ public LocationVO toLocationVO(Location location) { .address(location.getAddress()) .price(location.getPrice()) .userId(location.getUserId()) - .cover(location.getCover()) .createdAt(location.getCreatedAt()) .updatedAt(location.getUpdatedAt()) .image(location.getImage()) - .thumbCover(location.getThumbCover()) .thumbImage(location.getThumbImage()) .longitude(location.getLongitude()) .latitude(location.getLatitude()) diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesPolicyCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesPolicyCacheTask.java index 90029de..08511d3 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesPolicyCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesPolicyCacheTask.java @@ -71,9 +71,7 @@ public PolicyVO toPolicyVO(Policy policy) { .issueUnit(policy.getIssueUnit()) .issueTime(policy.getIssueTime()) .content(policy.getContent()) - .cover(policy.getCover()) .image(policy.getImage()) - .thumbCover(policy.getThumbCover()) .thumbImage(policy.getThumbImage()) .createdAt(policy.getCreatedAt()) .updatedAt(policy.getUpdatedAt()) diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesShootCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesShootCacheTask.java index da8c81d..4a3691a 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesShootCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesShootCacheTask.java @@ -75,11 +75,9 @@ public ShootVO toShootVO(Shoot shoot) { .phone(shoot.getPhone()) .contactName(shoot.getContactName()) .userId(shoot.getUserId()) - .cover(shoot.getCover()) .createdAt(shoot.getCreatedAt()) .updatedAt(shoot.getUpdatedAt()) .image(shoot.getImage()) - .thumbCover(shoot.getThumbCover()) .thumbImage(shoot.getThumbImage()) .build(); } diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesTourCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesTourCacheTask.java index 80e256e..003d419 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatesTourCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatesTourCacheTask.java @@ -70,14 +70,12 @@ public TourVO toTourVO(Tour tour) { .description(tour.getDescription()) .theme(tour.getTheme()) .features(tour.getFeatures()) - .cover(tour.getCover()) .transport(tour.getTransport()) .hotel(tour.getHotel()) .food(tour.getFood()) .image(tour.getImage()) .createdAt(tour.getCreatedAt()) .updatedAt(tour.getUpdatedAt()) - .thumbCover(tour.getThumbCover()) .thumbImage(tour.getThumbImage()) .longitude(tour.getLongitude()) .latitude(tour.getLatitude()) diff --git a/src/main/java/cn/cxdproject/coder/common/task/DailyLatestArticleCacheTask.java b/src/main/java/cn/cxdproject/coder/common/task/DailyLatestArticleCacheTask.java index 30ab2c5..2a69062 100644 --- a/src/main/java/cn/cxdproject/coder/common/task/DailyLatestArticleCacheTask.java +++ b/src/main/java/cn/cxdproject/coder/common/task/DailyLatestArticleCacheTask.java @@ -70,11 +70,9 @@ public ArticleVO toArticleVO(Article article) { .issueTime(article.getIssueTime()) .content(article.getContent()) .userId(article.getUserId()) - .cover(article.getCover()) .createdAt(article.getCreatedAt()) .updatedAt(article.getUpdatedAt()) .image(article.getImage()) - .thumbCover(article.getThumbCover()) .thumbImage(article.getThumbImage()) .build(); } diff --git a/src/main/java/cn/cxdproject/coder/controller/ArticleController.java b/src/main/java/cn/cxdproject/coder/controller/ArticleController.java index 10ef19e..296a489 100644 --- a/src/main/java/cn/cxdproject/coder/controller/ArticleController.java +++ b/src/main/java/cn/cxdproject/coder/controller/ArticleController.java @@ -78,7 +78,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } @@ -130,7 +129,6 @@ public ApiResponse updateArticleByAdmin( */ @DeleteMapping("/admin/delete/{id}") public ApiResponse deleteArticleByAdmin(@PathVariable @NotNull(message = "文章ID不能为空") Long id) { - // 权限检查在拦截器中完成 articleService.deleteArticleByAdmin(id); return ApiResponse.success(); } diff --git a/src/main/java/cn/cxdproject/coder/controller/DramaController.java b/src/main/java/cn/cxdproject/coder/controller/DramaController.java index af99831..eed0712 100644 --- a/src/main/java/cn/cxdproject/coder/controller/DramaController.java +++ b/src/main/java/cn/cxdproject/coder/controller/DramaController.java @@ -75,7 +75,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/controller/HotelController.java b/src/main/java/cn/cxdproject/coder/controller/HotelController.java index 740524c..0363659 100644 --- a/src/main/java/cn/cxdproject/coder/controller/HotelController.java +++ b/src/main/java/cn/cxdproject/coder/controller/HotelController.java @@ -67,7 +67,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/controller/LocationController.java b/src/main/java/cn/cxdproject/coder/controller/LocationController.java index c0aeb19..817f90d 100644 --- a/src/main/java/cn/cxdproject/coder/controller/LocationController.java +++ b/src/main/java/cn/cxdproject/coder/controller/LocationController.java @@ -76,7 +76,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/controller/PolicyController.java b/src/main/java/cn/cxdproject/coder/controller/PolicyController.java index c64e177..0382d4c 100644 --- a/src/main/java/cn/cxdproject/coder/controller/PolicyController.java +++ b/src/main/java/cn/cxdproject/coder/controller/PolicyController.java @@ -71,7 +71,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/controller/ShootController.java b/src/main/java/cn/cxdproject/coder/controller/ShootController.java index 2eb77bc..14589ae 100644 --- a/src/main/java/cn/cxdproject/coder/controller/ShootController.java +++ b/src/main/java/cn/cxdproject/coder/controller/ShootController.java @@ -74,7 +74,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/controller/TourController.java b/src/main/java/cn/cxdproject/coder/controller/TourController.java index baf9045..5f6fe36 100644 --- a/src/main/java/cn/cxdproject/coder/controller/TourController.java +++ b/src/main/java/cn/cxdproject/coder/controller/TourController.java @@ -69,7 +69,6 @@ public CursorPageResponseVO page( String nextCursor = null; if (list.size() == size && !list.isEmpty()) { - // 升序:最后一条是最大的 id nextCursor = String.valueOf(list.get(list.size() - 1).getId()); } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateArticleDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateArticleDTO.java index aacf737..3bd906b 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateArticleDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateArticleDTO.java @@ -25,7 +25,6 @@ public class CreateArticleDTO { @NotBlank(message = "发布单位不能为空") private String issueUnit; - private String thumbCover; private String thumbImage; @@ -35,8 +34,6 @@ public class CreateArticleDTO { @NotBlank(message = "文章内容不能为空") private String content; - private String cover; - private String image; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateDramaDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateDramaDTO.java index 50b0e39..ace47f4 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateDramaDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateDramaDTO.java @@ -43,12 +43,8 @@ public class CreateDramaDTO { @NotNull(message = "协拍服务ID不能为空") private Long serviceId; - private String cover; - private String image; - private String thumbCover; - private String thumbImage; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateHotelDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateHotelDTO.java index ce908e8..1662ebf 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateHotelDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateHotelDTO.java @@ -38,19 +38,11 @@ public class CreateHotelDTO { @NotBlank private String managerPhone; - /** - * 封面 - */ - @NotBlank - private String cover; - /** * 图片 */ private String image; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateLocationDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateLocationDTO.java index d3b8df9..8887394 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateLocationDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateLocationDTO.java @@ -45,12 +45,8 @@ public class CreateLocationDTO { @NotNull(message = "价格不能为空") private BigDecimal price; - private String cover; - private String image; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreatePolicyDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreatePolicyDTO.java index 4aa3328..f912491 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreatePolicyDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreatePolicyDTO.java @@ -35,11 +35,6 @@ public class CreatePolicyDTO { @NotBlank private String content; - /** - * 封面 - */ - @NotBlank - private String cover; /** * 图片 @@ -47,12 +42,6 @@ public class CreatePolicyDTO { private String image; - /** - * 压缩封面 - */ - @NotBlank - private String thumbCover; - /** * 压缩图片 */ diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateShootDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateShootDTO.java index 46e73fa..c999158 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateShootDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateShootDTO.java @@ -35,12 +35,8 @@ public class CreateShootDTO { @NotBlank(message = "联系人不能为空") private String contactName; - private String cover; - private String image; - private String thumbCover; - private String thumbImage; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/CreateTourDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/CreateTourDTO.java index ea837e8..2cb63e0 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/CreateTourDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/CreateTourDTO.java @@ -34,12 +34,6 @@ public class CreateTourDTO { @NotBlank private String features; - /** - * 封面 - */ - @NotBlank - private String cover; - /** * 交通方式 */ @@ -63,8 +57,6 @@ public class CreateTourDTO { */ private String image; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateArticleDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateArticleDTO.java index 54e25b6..fb7e9cd 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateArticleDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateArticleDTO.java @@ -25,12 +25,8 @@ public class UpdateArticleDTO { */ private String content; - private String cover; - private String image; - private String thumbCover; - private String thumbImage; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateDramaDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateDramaDTO.java index ae6b767..438844e 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateDramaDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateDramaDTO.java @@ -20,9 +20,7 @@ public class UpdateDramaDTO { private Long locationId; private String service; private Long serviceId; - private String cover; private String image; - private String thumbCover; private String thumbImage; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateHotelDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateHotelDTO.java index bd8ae1f..db153e3 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateHotelDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateHotelDTO.java @@ -37,19 +37,12 @@ public class UpdateHotelDTO { @NotBlank private String managerPhone; - /** - * 封面 - */ - @NotBlank - private String cover; /** * 图片 */ private String image; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateLocationDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateLocationDTO.java index f2226e2..c4162ca 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateLocationDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateLocationDTO.java @@ -23,9 +23,7 @@ public class UpdateLocationDTO { private String govPrincipalName; private String address; private BigDecimal price; - private String cover; private String image; - private String thumbCover; private String thumbImage; private String longitude; private String latitude; diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdatePolicyDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdatePolicyDTO.java index 0e5a3b5..ec54197 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdatePolicyDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdatePolicyDTO.java @@ -34,24 +34,9 @@ public class UpdatePolicyDTO { @NotBlank private String content; - /** - * 封面 - */ - @NotBlank - private String cover; - - /** - * 图片 - */ private String image; - /** - * 压缩封面 - */ - @NotBlank - private String thumbCover; - /** * 压缩图片 */ diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateShootDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateShootDTO.java index 94510e6..6c89bc8 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateShootDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateShootDTO.java @@ -19,9 +19,7 @@ public class UpdateShootDTO { private String address; private String phone; private String contactName; - private String cover; private String image; - private String thumbCover; private String thumbImage; } diff --git a/src/main/java/cn/cxdproject/coder/model/dto/UpdateTourDTO.java b/src/main/java/cn/cxdproject/coder/model/dto/UpdateTourDTO.java index 469ed83..416ad5c 100644 --- a/src/main/java/cn/cxdproject/coder/model/dto/UpdateTourDTO.java +++ b/src/main/java/cn/cxdproject/coder/model/dto/UpdateTourDTO.java @@ -31,11 +31,6 @@ public class UpdateTourDTO { @NotBlank private String features; - /** - * 封面 - */ - @NotBlank - private String cover; /** * 交通方式 @@ -60,8 +55,6 @@ public class UpdateTourDTO { */ private String image; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Article.java b/src/main/java/cn/cxdproject/coder/model/entity/Article.java index 02e0ac1..e1b4140 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Article.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Article.java @@ -62,14 +62,10 @@ public class Article extends BaseEntity implements Serializable, Cloneable { @TableField("user_id") private Long userId; - @TableField("cover") - private String cover; @TableField("image") private String image; - @TableField("thumb_cover") - private String thumbCover; @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Drama.java b/src/main/java/cn/cxdproject/coder/model/entity/Drama.java index c7a8d71..581303c 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Drama.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Drama.java @@ -96,15 +96,10 @@ public class Drama extends BaseEntity implements Serializable, Cloneable { @TableField("user_id") private Long userId; - @TableField("cover") - private String cover; - @TableField("image") private String image; - @TableField("thumb_cover") - private String thumbCover; @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Hotel.java b/src/main/java/cn/cxdproject/coder/model/entity/Hotel.java index bda5bac..3dff740 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Hotel.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Hotel.java @@ -6,6 +6,7 @@ import lombok.*; import java.io.Serial; +import java.io.Serializable; @Data @Builder @@ -13,7 +14,7 @@ @NoArgsConstructor @TableName("fi_hotel") @EqualsAndHashCode(callSuper = true) -public class Hotel extends BaseEntity { +public class Hotel extends BaseEntity implements Serializable, Cloneable { @Serial private static final long serialVersionUID = 1L; @@ -56,12 +57,6 @@ public class Hotel extends BaseEntity { @TableField("manager_phone") private String managerPhone; - /** - * 封面 - */ - @TableField("cover") - private String cover; - /** * 图片 */ @@ -71,9 +66,6 @@ public class Hotel extends BaseEntity { @TableField("user_id") private Long userId; - @TableField("thumb_cover") - private String thumbCover; - @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Location.java b/src/main/java/cn/cxdproject/coder/model/entity/Location.java index 5d7c29a..6f239a4 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Location.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Location.java @@ -91,15 +91,10 @@ public class Location extends BaseEntity implements Serializable, Cloneable { @TableField("user_id") private Long userId; - @TableField("cover") - private String cover; @TableField("image") private String image; - @TableField("thumb_cover") - private String thumbCover; - @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Policy.java b/src/main/java/cn/cxdproject/coder/model/entity/Policy.java index 29e8fd1..ec6408c 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Policy.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Policy.java @@ -54,23 +54,12 @@ public class Policy extends BaseEntity implements Serializable { @TableField("content") private String content; - /** - * 封面 - */ - @TableField("cover") - private String cover; - /** * 图片 */ @TableField("image") private String image; - /** - * 压缩封面 - */ - @TableField("thumb_cover") - private String thumbCover; /** * 压缩图片 diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Shoot.java b/src/main/java/cn/cxdproject/coder/model/entity/Shoot.java index 060f362..e88b661 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Shoot.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Shoot.java @@ -79,14 +79,10 @@ public class Shoot extends BaseEntity implements Serializable, Cloneable { @TableField("user_id") private Long userId; - @TableField("cover") - private String cover; @TableField("image") private String image; - @TableField("thumb_cover") - private String thumbCover; @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/entity/Tour.java b/src/main/java/cn/cxdproject/coder/model/entity/Tour.java index 2852336..d34fc10 100644 --- a/src/main/java/cn/cxdproject/coder/model/entity/Tour.java +++ b/src/main/java/cn/cxdproject/coder/model/entity/Tour.java @@ -53,12 +53,6 @@ public class Tour extends BaseEntity implements Serializable { @TableField("features") private String features; - /** - * 封面 - */ - @TableField("cover") - private String cover; - /** * 交通方式 */ @@ -83,9 +77,6 @@ public class Tour extends BaseEntity implements Serializable { @TableField("image") private String image; - @TableField("thumb_cover") - private String thumbCover; - @TableField("thumb_image") private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/ArticleVO.java b/src/main/java/cn/cxdproject/coder/model/vo/ArticleVO.java index aaf6491..38c28f8 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/ArticleVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/ArticleVO.java @@ -52,12 +52,8 @@ public class ArticleVO { */ private Long userId; - private String cover; - private String image; - private String thumbCover; - private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/DramaVO.java b/src/main/java/cn/cxdproject/coder/model/vo/DramaVO.java index b7fcd4b..3d1c4ce 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/DramaVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/DramaVO.java @@ -80,8 +80,6 @@ public class DramaVO { */ private Long userId; - private String cover; - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createdAt; @@ -90,8 +88,6 @@ public class DramaVO { private String image; - private String thumbCover; - private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/HotelVO.java b/src/main/java/cn/cxdproject/coder/model/vo/HotelVO.java index 9d3d1c5..25d2a20 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/HotelVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/HotelVO.java @@ -45,11 +45,6 @@ public class HotelVO { */ private String managerPhone; - /** - * 封面 - */ - private String cover; - /** * 图片 */ @@ -66,8 +61,6 @@ public class HotelVO { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updatedAt; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/LocationVO.java b/src/main/java/cn/cxdproject/coder/model/vo/LocationVO.java index e8efcad..d424daa 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/LocationVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/LocationVO.java @@ -33,13 +33,11 @@ public class LocationVO { private String address; private BigDecimal price; private Long userId; - private String cover; private String image; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createdAt; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updatedAt; - private String thumbCover; private String thumbImage; private String longitude; private String latitude; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/PolicyVO.java b/src/main/java/cn/cxdproject/coder/model/vo/PolicyVO.java index d2b44cf..218c1ae 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/PolicyVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/PolicyVO.java @@ -49,24 +49,12 @@ public class PolicyVO { private String content; - /** - * 封面 - */ - - private String cover; - /** * 图片 */ private String image; - /** - * 压缩封面 - */ - - private String thumbCover; - /** * 压缩图片 */ diff --git a/src/main/java/cn/cxdproject/coder/model/vo/ShootVO.java b/src/main/java/cn/cxdproject/coder/model/vo/ShootVO.java index cbc25b4..3d3300b 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/ShootVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/ShootVO.java @@ -29,13 +29,11 @@ public class ShootVO { private String phone; private String contactName; private Long userId; - private String cover; private String image; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createdAt; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updatedAt; - private String thumbCover; private String thumbImage; diff --git a/src/main/java/cn/cxdproject/coder/model/vo/TourVO.java b/src/main/java/cn/cxdproject/coder/model/vo/TourVO.java index e426178..22487db 100644 --- a/src/main/java/cn/cxdproject/coder/model/vo/TourVO.java +++ b/src/main/java/cn/cxdproject/coder/model/vo/TourVO.java @@ -26,8 +26,6 @@ public class TourVO { private String features; - private String cover; - private String transport; private String hotel; @@ -42,8 +40,6 @@ public class TourVO { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime updatedAt; - private String thumbCover; - private String thumbImage; private String longitude; diff --git a/src/main/java/cn/cxdproject/coder/service/impl/ArticleServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/ArticleServiceImpl.java index c184331..46a35bf 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/ArticleServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/ArticleServiceImpl.java @@ -88,7 +88,6 @@ public List getArticlePage(Long lastId, int size, String keyword) { Map articleMap = articles.stream() .collect(Collectors.toMap(Article::getId, a -> a)); - return ids.stream() .map(articleMap::get) .filter(Objects::nonNull) @@ -104,8 +103,9 @@ public ArticleVO createArticleByAdmin(CreateArticleDTO createDTO) { if (currentUser == null) { throw new BusinessException(UNAUTHORIZED.code(), "未登录"); } - if (createDTO.getCover() == null) { - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } // 创建文章 Article article = Article.builder() @@ -114,9 +114,7 @@ public ArticleVO createArticleByAdmin(CreateArticleDTO createDTO) { .content(createDTO.getContent()) .issueTime(LocalDateTime.now()) .userId(currentUser.getId()) - .cover(createDTO.getCover()) .image(createDTO.getImage()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .build(); @@ -136,8 +134,6 @@ public ArticleVO updateArticleByAdmin(Long articleId, UpdateArticleDTO updateDTO if (updateDTO.getTitle() != null) article.setTitle(updateDTO.getTitle()); if (updateDTO.getIssueUnit() != null) article.setIssueUnit(updateDTO.getIssueUnit()); if (updateDTO.getContent() != null) article.setContent(updateDTO.getContent()); - if (updateDTO.getCover() != null) article.setCover(updateDTO.getCover()); - if (updateDTO.getThumbCover() != null) article.setThumbCover(updateDTO.getThumbCover()); if (updateDTO.getThumbImage() != null) article.setThumbImage(updateDTO.getThumbImage()); @@ -178,11 +174,9 @@ public ArticleVO toArticleVO(Article article) { .issueTime(article.getIssueTime()) .content(article.getContent()) .userId(article.getUserId()) - .cover(article.getCover()) .createdAt(article.getCreatedAt()) .updatedAt(article.getUpdatedAt()) .image(article.getImage()) - .thumbCover(article.getThumbCover()) .thumbImage(article.getThumbImage()) .build(); } @@ -217,8 +211,6 @@ public List getPageFallback(Long lastId, int size, String keyword, Th return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/DramaServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/DramaServiceImpl.java index ab29f8c..8abbcb0 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/DramaServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/DramaServiceImpl.java @@ -53,9 +53,11 @@ public DramaServiceImpl(DramaMapper dramaMapper, @Override @Bulkhead(name = "add", type = Bulkhead.Type.SEMAPHORE) public DramaVO createDramaByAdmin(Long userId, CreateDramaDTO createDTO) { - if(createDTO.getCover()==null){ - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } + Drama drama = Drama.builder() .name(createDTO.getName()) .filingNum(createDTO.getFilingNum()) @@ -69,8 +71,6 @@ public DramaVO createDramaByAdmin(Long userId, CreateDramaDTO createDTO) { .serviceId(createDTO.getServiceId()) .userId(userId) .image(createDTO.getImage()) - .cover(createDTO.getCover()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .build(); @@ -134,9 +134,7 @@ public DramaVO updateDramaByAdmin(Long dramaId, UpdateDramaDTO updateDTO) { if (updateDTO.getLocationId() != null) drama.setLocationId(updateDTO.getLocationId()); if (updateDTO.getService() != null) drama.setService(updateDTO.getService()); if (updateDTO.getServiceId() != null) drama.setServiceId(updateDTO.getServiceId()); - if(updateDTO.getCover() != null) drama.setCover(updateDTO.getCover()); if(updateDTO.getImage() != null) drama.setImage(updateDTO.getImage()); - if(updateDTO.getThumbCover() != null) drama.setThumbCover(updateDTO.getThumbCover()); if(updateDTO.getThumbImage() != null) drama.setThumbImage(updateDTO.getThumbImage()); drama.setUpdatedAt(LocalDateTime.now()); @@ -180,11 +178,9 @@ public DramaVO toDramaVO(Drama drama) { .service(drama.getService()) .serviceId(drama.getServiceId()) .userId(drama.getUserId()) - .cover(drama.getCover()) .createdAt(drama.getCreatedAt()) .updatedAt(drama.getUpdatedAt()) .image(drama.getImage()) - .thumbCover(drama.getThumbCover()) .thumbImage(drama.getThumbImage()) .build(); @@ -220,8 +216,6 @@ public List getPageFallback(Long lastId, int size, String keyword, Thro return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/HotelServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/HotelServiceImpl.java index 0a8a806..6139e15 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/HotelServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/HotelServiceImpl.java @@ -56,8 +56,9 @@ public HotelServiceImpl( @Override @Bulkhead(name = "add", type = Bulkhead.Type.SEMAPHORE) public HotelVO createHotelByAdmin(Long userId, CreateHotelDTO createDTO) { - if(createDTO.getCover()==null){ - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } Hotel hotel = Hotel.builder() .name(createDTO.getName()) @@ -65,10 +66,8 @@ public HotelVO createHotelByAdmin(Long userId, CreateHotelDTO createDTO) { .address(createDTO.getAddress()) .managerName(createDTO.getManagerName()) .managerPhone(createDTO.getManagerPhone()) - .cover(createDTO.getCover()) .image(createDTO.getImage()) .userId(userId) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .latitude(createDTO.getLatitude()) .longitude(createDTO.getLongitude()) @@ -130,9 +129,7 @@ public HotelVO updateHotelByAdmin(Long hotelId, UpdateHotelDTO updateDTO) { if (updateDTO.getAddress() != null) hotel.setAddress(updateDTO.getAddress()); if (updateDTO.getManagerName() != null) hotel.setManagerName(updateDTO.getManagerName()); if (updateDTO.getManagerPhone() != null) hotel.setManagerPhone(updateDTO.getManagerPhone()); - if (updateDTO.getCover() != null) hotel.setCover(updateDTO.getCover()); if (updateDTO.getImage() != null) hotel.setImage(updateDTO.getImage()); - if (updateDTO.getThumbCover() != null) hotel.setThumbCover(updateDTO.getThumbCover()); if (updateDTO.getThumbImage() != null) hotel.setThumbImage(updateDTO.getThumbImage()); if (updateDTO.getLongitude() != null) hotel.setLongitude(updateDTO.getLongitude()); if (updateDTO.getLatitude() != null) hotel.setLatitude(updateDTO.getLatitude()); @@ -175,11 +172,9 @@ public HotelVO toHotelVO(Hotel hotel) { .managerPhone(hotel.getManagerPhone()) .address(hotel.getAddress()) .image(hotel.getImage()) - .cover(hotel.getCover()) .updatedAt(hotel.getUpdatedAt()) .createdAt(hotel.getCreatedAt()) .userId(hotel.getUserId()) - .thumbCover(hotel.getThumbCover()) .thumbImage(hotel.getThumbImage()) .longitude(hotel.getLongitude()) .latitude(hotel.getLatitude()) @@ -216,8 +211,7 @@ public List getPageFallback(Long lastId, int size, String keyword, Thro return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 + int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/LocationServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/LocationServiceImpl.java index 745bde7..804d6be 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/LocationServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/LocationServiceImpl.java @@ -55,8 +55,9 @@ public LocationServiceImpl( @Override @Bulkhead(name = "add", type = Bulkhead.Type.SEMAPHORE) public LocationVO createLocationByAdmin(Long userId, CreateLocationDTO createDTO) { - if(createDTO.getCover()==null){ - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } Location location = Location.builder() @@ -72,8 +73,6 @@ public LocationVO createLocationByAdmin(Long userId, CreateLocationDTO createDTO .price(createDTO.getPrice()) .userId(userId) .image(createDTO.getImage()) - .cover(createDTO.getCover()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .longitude(createDTO.getLongitude()) .latitude(createDTO.getLatitude()) @@ -140,9 +139,7 @@ public LocationVO updateLocationByAdmin(Long locationId, UpdateLocationDTO updat if (updateDTO.getGovPrincipalPhone() != null) location.setGovPrincipalPhone(updateDTO.getGovPrincipalPhone()); if (updateDTO.getAddress() != null) location.setAddress(updateDTO.getAddress()); if (updateDTO.getPrice() != null) location.setPrice(updateDTO.getPrice()); - if(updateDTO.getCover() != null) location.setCover(updateDTO.getCover()); if(updateDTO.getImage() != null) location.setImage(updateDTO.getImage()); - if(updateDTO.getThumbCover() != null) location.setThumbCover(updateDTO.getThumbCover()); if(updateDTO.getThumbImage() != null) location.setThumbImage(updateDTO.getThumbImage()); if(updateDTO.getLongitude() != null) location.setLongitude(updateDTO.getLongitude()); if(updateDTO.getLatitude() != null) location.setLatitude(updateDTO.getLatitude()); @@ -190,11 +187,9 @@ public LocationVO toLocationVO(Location location) { .address(location.getAddress()) .price(location.getPrice()) .userId(location.getUserId()) - .cover(location.getCover()) .createdAt(location.getCreatedAt()) .updatedAt(location.getUpdatedAt()) .image(location.getImage()) - .thumbCover(location.getThumbCover()) .thumbImage(location.getThumbImage()) .longitude(location.getLongitude()) .latitude(location.getLatitude()) @@ -231,8 +226,6 @@ public List getPageFallback(Long lastId, int size, String keyword, T return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/PolicyServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/PolicyServiceImpl.java index 687df44..7ebca52 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/PolicyServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/PolicyServiceImpl.java @@ -49,8 +49,9 @@ public PolicyServiceImpl(PolicyMapper policyMapper, Cache cache, @Override public PolicyVO createPolicyByAdmin(CreatePolicyDTO createDTO) { - if (createDTO.getCover() == null) { - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } Policy policy = Policy.builder() @@ -60,8 +61,6 @@ public PolicyVO createPolicyByAdmin(CreatePolicyDTO createDTO) { .issueTime(createDTO.getIssueTime()) .issueUnit(createDTO.getIssueUnit()) .image(createDTO.getImage()) - .cover(createDTO.getCover()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .build(); @@ -120,9 +119,7 @@ public PolicyVO updatePolicyByAdmin(Long policyId, UpdatePolicyDTO updateDTO) { if (updateDTO.getIssueUnit() != null) policy.setIssueUnit(updateDTO.getIssueUnit()); if (updateDTO.getIssueTime() != null) policy.setIssueTime(updateDTO.getIssueTime()); if (updateDTO.getContent() != null) policy.setContent(updateDTO.getContent()); - if (updateDTO.getCover() != null) policy.setCover(updateDTO.getCover()); if (updateDTO.getImage() != null) policy.setImage(updateDTO.getImage()); - if (updateDTO.getThumbCover() != null) policy.setThumbCover(updateDTO.getThumbCover()); if (updateDTO.getThumbImage() != null) policy.setThumbImage(updateDTO.getThumbImage()); cache.asMap().put(CaffeineConstants.POLICY + policyId, policy); @@ -161,9 +158,7 @@ public PolicyVO toPolicyVO(Policy policy) { .issueUnit(policy.getIssueUnit()) .issueTime(policy.getIssueTime()) .content(policy.getContent()) - .cover(policy.getCover()) .image(policy.getImage()) - .thumbCover(policy.getThumbCover()) .thumbImage(policy.getThumbImage()) .createdAt(policy.getCreatedAt()) .updatedAt(policy.getUpdatedAt()) @@ -200,8 +195,6 @@ public List getPageFallback(Long lastId, int size, String keyword, Thr return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/ShootServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/ShootServiceImpl.java index fc07b85..fb5d203 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/ShootServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/ShootServiceImpl.java @@ -55,8 +55,9 @@ public ShootServiceImpl( @Override @Bulkhead(name = "add", type = Bulkhead.Type.SEMAPHORE) public ShootVO createShootByAdmin(Long userId, CreateShootDTO createDTO) { - if(createDTO.getCover()==null){ - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } Shoot shoot = Shoot.builder() @@ -68,9 +69,7 @@ public ShootVO createShootByAdmin(Long userId, CreateShootDTO createDTO) { .phone(createDTO.getPhone()) .contactName(createDTO.getContactName()) .userId(userId) - .cover(createDTO.getCover()) .image(createDTO.getImage()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .build(); @@ -131,9 +130,7 @@ public ShootVO updateShootByAdmin(Long shootId, UpdateShootDTO updateDTO) { if (updateDTO.getAddress() != null) shoot.setAddress(updateDTO.getAddress()); if (updateDTO.getPhone() != null) shoot.setPhone(updateDTO.getPhone()); if (updateDTO.getContactName() != null) shoot.setContactName(updateDTO.getContactName()); - if (updateDTO.getCover() != null) shoot.setCover(updateDTO.getCover()); if (updateDTO.getImage() != null) shoot.setImage(updateDTO.getImage()); - if (updateDTO.getThumbCover() != null) shoot.setThumbCover(updateDTO.getThumbCover()); if (updateDTO.getThumbImage() != null) shoot.setThumbImage(updateDTO.getThumbImage()); shoot.setUpdatedAt(LocalDateTime.now()); @@ -176,11 +173,9 @@ public ShootVO toShootVO(Shoot shoot) { .phone(shoot.getPhone()) .contactName(shoot.getContactName()) .userId(shoot.getUserId()) - .cover(shoot.getCover()) .createdAt(shoot.getCreatedAt()) .updatedAt(shoot.getUpdatedAt()) .image(shoot.getImage()) - .thumbCover(shoot.getThumbCover()) .thumbImage(shoot.getThumbImage()) .build(); } @@ -215,8 +210,6 @@ public List getPageFallback(Long lastId, int size, String keyword, Thro return Collections.emptyList(); } - // 直接取前 N 条(N = min(size, 缓存长度)) - // 注意:这里忽略 lastId 和 keyword,因为 fallback 只提供静态兜底数据 int take = Math.min(size, array.length); return new ArrayList<>(Arrays.asList(array).subList(0, take)); diff --git a/src/main/java/cn/cxdproject/coder/service/impl/TourServiceImpl.java b/src/main/java/cn/cxdproject/coder/service/impl/TourServiceImpl.java index 2abcf79..fceeb52 100644 --- a/src/main/java/cn/cxdproject/coder/service/impl/TourServiceImpl.java +++ b/src/main/java/cn/cxdproject/coder/service/impl/TourServiceImpl.java @@ -38,32 +38,29 @@ public class TourServiceImpl extends ServiceImpl implements To private final TourMapper tourMapper; private final Cache cache; private final RedisUtils redisUtils; - private final cn.cxdproject.coder.mapper.DramaMapper dramaMapper; - public TourServiceImpl(TourMapper tourMapper, Cache cache, RedisUtils redisUtils, cn.cxdproject.coder.mapper.DramaMapper dramaMapper) { + public TourServiceImpl(TourMapper tourMapper, Cache cache, RedisUtils redisUtils) { this.tourMapper = tourMapper; this.cache = cache; this.redisUtils = redisUtils; - this.dramaMapper = dramaMapper; } @Override public TourVO createTourByAdmin(CreateTourDTO createDTO) { - if(createDTO.getCover()==null){ - createDTO.setCover(Constants.DEFAULT_COVER); + if (createDTO.getImage() == null) { + createDTO.setImage(Constants.DEFAULT_COVER); + createDTO.setThumbImage(Constants.DEFAULT_THUMB_COVER); } Tour tour = Tour.builder() .name(createDTO.getName()) .description(createDTO.getDescription()) .theme(createDTO.getTheme()) - .cover(createDTO.getCover()) .food(createDTO.getFood()) .hotel(createDTO.getHotel()) .features(createDTO.getFeatures()) .transport(createDTO.getFeatures()) .image(createDTO.getImage()) - .thumbCover(createDTO.getThumbCover()) .thumbImage(createDTO.getThumbImage()) .latitude(createDTO.getLatitude()) .longitude(createDTO.getLongitude()) @@ -127,12 +124,10 @@ public TourVO updateTourByAdmin(Long tourId, UpdateTourDTO updateDTO) { if (updateDTO.getDescription() != null) tour.setDescription(updateDTO.getDescription()); if (updateDTO.getTheme() != null) tour.setTheme(updateDTO.getTheme()); if (updateDTO.getFeatures() != null) tour.setFeatures(updateDTO.getFeatures()); - if (updateDTO.getCover() != null) tour.setCover(updateDTO.getCover()); if (updateDTO.getTransport() != null) tour.setTransport(updateDTO.getTransport()); if (updateDTO.getHotel() != null) tour.setHotel(updateDTO.getHotel()); if (updateDTO.getFood() != null) tour.setFood(updateDTO.getFood()); if (updateDTO.getImage() != null) tour.setImage(updateDTO.getImage()); - if (updateDTO.getThumbCover() != null) tour.setThumbCover(updateDTO.getThumbCover()); if (updateDTO.getThumbImage() != null) tour.setThumbImage(updateDTO.getThumbImage()); if (updateDTO.getLongitude() != null) tour.setLongitude(updateDTO.getLongitude()); if (updateDTO.getLatitude() != null) tour.setLatitude(updateDTO.getLatitude()); @@ -173,45 +168,18 @@ public TourVO toTourVO(Tour tour) { return null; } - // 处理影视IP名称拼接 - String ipWorks = ""; - if (tour.getDramaId() != null && !tour.getDramaId().isEmpty()) { - try { - String[] ids = tour.getDramaId().split(","); - List dramaIds = new ArrayList<>(); - for (String id : ids) { - if (!id.trim().isEmpty()) { - dramaIds.add(Long.parseLong(id.trim())); - } - } - - if (!dramaIds.isEmpty()) { - List dramas = dramaMapper.selectBatchIds(dramaIds); - if (dramas != null && !dramas.isEmpty()) { - ipWorks = dramas.stream() - .map(d -> "《" + d.getName() + "》") - .collect(Collectors.joining("")); - } - } - } catch (Exception e) { - log.error("Failed to load drama info for tour: " + tour.getId(), e); - } - } - return TourVO.builder() .id(tour.getId()) .name(tour.getName()) .description(tour.getDescription()) .theme(tour.getTheme()) .features(tour.getFeatures()) - .cover(tour.getCover()) .transport(tour.getTransport()) .hotel(tour.getHotel()) .food(tour.getFood()) .image(tour.getImage()) .createdAt(tour.getCreatedAt()) .updatedAt(tour.getUpdatedAt()) - .thumbCover(tour.getThumbCover()) .thumbImage(tour.getThumbImage()) .longitude(tour.getLongitude()) .latitude(tour.getLatitude()) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index a4db10b..dc3659c 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,11 +1,11 @@ # 应用信息配置 code100: # 基础信息 - name: Code100 + name: Yaan version: @project.version@ # Maven属性注入 build-time: "2025-04-27 20:15:23" copyright: - owner: Code100 Team + owner: Yaan since-year: 2025 license: MIT diff --git a/src/main/resources/mapper/ArticleMapper.xml b/src/main/resources/mapper/ArticleMapper.xml index 4f3f4a1..3a5951a 100644 --- a/src/main/resources/mapper/ArticleMapper.xml +++ b/src/main/resources/mapper/ArticleMapper.xml @@ -14,9 +14,7 @@ - - - + @@ -28,11 +26,9 @@ `content`, `user_id`, `deleted`, - 'cover', `created_at`, `updated_at`, 'image', - 'thumb_cover', 'thumb_image' diff --git a/src/main/resources/mapper/DramaMapper.xml b/src/main/resources/mapper/DramaMapper.xml index 9e925a5..1d59006 100644 --- a/src/main/resources/mapper/DramaMapper.xml +++ b/src/main/resources/mapper/DramaMapper.xml @@ -20,9 +20,7 @@ - - @@ -39,12 +37,10 @@ `service`, `service_id`, `user_id`, - 'cover', `deleted`, `created_at`, `updated_at`, 'image', - 'thumb_cover', 'thumb_image' diff --git a/src/main/resources/mapper/HotelMapper.xml b/src/main/resources/mapper/HotelMapper.xml index 413feee..c33dcc3 100644 --- a/src/main/resources/mapper/HotelMapper.xml +++ b/src/main/resources/mapper/HotelMapper.xml @@ -11,12 +11,10 @@ - - @@ -29,12 +27,10 @@ `address`, `manager_name`, `manager_phone`, - `cover`, `image` `deleted`, `created_at`, `updated_at`, - 'thumb_cover', 'thumb_image', 'longitude', 'latitude' diff --git a/src/main/resources/mapper/LocationMapper.xml b/src/main/resources/mapper/LocationMapper.xml index d240006..dfda343 100644 --- a/src/main/resources/mapper/LocationMapper.xml +++ b/src/main/resources/mapper/LocationMapper.xml @@ -20,9 +20,7 @@ - - @@ -42,12 +40,10 @@ `address`, `price`, `user_id`, - 'cover', `deleted`, `created_at`, `updated_at`, 'image', - 'thumb_cover', 'thumb_image', 'longitude', 'latitude' diff --git a/src/main/resources/mapper/PolicyMapper.xml b/src/main/resources/mapper/PolicyMapper.xml index 807662a..b45c915 100644 --- a/src/main/resources/mapper/PolicyMapper.xml +++ b/src/main/resources/mapper/PolicyMapper.xml @@ -11,9 +11,7 @@ - - @@ -27,9 +25,7 @@ `issue_unit`, `issue_time`, `content`, - `cover`, `image`, - `thumb_cover`, `thumb_image`, `created_at`, `updated_at`, diff --git a/src/main/resources/mapper/ShootMapper.xml b/src/main/resources/mapper/ShootMapper.xml index f11c97f..2749bf2 100644 --- a/src/main/resources/mapper/ShootMapper.xml +++ b/src/main/resources/mapper/ShootMapper.xml @@ -17,9 +17,7 @@ - - @@ -33,12 +31,10 @@ `phone`, `contact_name`, `user_id`, - 'cover', `deleted`, `created_at`, `updated_at`, 'image', - 'thumb_cover', 'thumb_image' diff --git a/src/main/resources/mapper/TourMapper.xml b/src/main/resources/mapper/TourMapper.xml index 5d27809..8a3d7c9 100644 --- a/src/main/resources/mapper/TourMapper.xml +++ b/src/main/resources/mapper/TourMapper.xml @@ -10,7 +10,6 @@ - @@ -18,7 +17,6 @@ - @@ -32,7 +30,6 @@ `description`, `theme`, `features`, - `cover`, `transport`, `hotel`, `food`, @@ -40,7 +37,6 @@ `updated_at`, `deleted`, `image`, - 'thumb_cover', 'thumb_image', 'longitude', 'latitude',