diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementCarouselBannerServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementCarouselBannerServiceImpl.java index 8a55fea7..31f113be 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementCarouselBannerServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementCarouselBannerServiceImpl.java @@ -16,6 +16,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.satoken.utils.LoginHelper; import org.springframework.stereotype.Service; import com.zdxt.enforcementcode.domain.bo.EnforcementCarouselBannerBo; import com.zdxt.enforcementcode.domain.vo.EnforcementCarouselBannerVo; @@ -153,6 +154,10 @@ public class EnforcementCarouselBannerServiceImpl implements IEnforcementCarouse lqw.eq(bo.getSort() != null, EnforcementCarouselBanner::getSort, bo.getSort()); lqw.eq(StringUtils.isNotBlank(bo.getContent()), EnforcementCarouselBanner::getContent, bo.getContent()); lqw.eq(bo.getStatus() != null, EnforcementCarouselBanner::getStatus, bo.getStatus()); + if (bo.getStatus() == null) { + lqw.in(EnforcementCarouselBanner::getStatus, 2L, 3L); + } + lqw.eq(bo.getCreateBy() != null, EnforcementCarouselBanner::getCreateBy, bo.getCreateBy()); lqw.eq(bo.getType() != null, EnforcementCarouselBanner::getType, bo.getType()); lqw.eq(StringUtils.isNotBlank(bo.getBureauDeptId()), EnforcementCarouselBanner::getBureauDeptId, bo.getBureauDeptId()); lqw.eq(StringUtils.isNotBlank(bo.getOrganId()), EnforcementCarouselBanner::getOrganId, bo.getOrganId()); @@ -179,6 +184,8 @@ public class EnforcementCarouselBannerServiceImpl implements IEnforcementCarouse public Boolean insertByBo(EnforcementCarouselBannerBo bo) { EnforcementCarouselBanner add = MapstructUtils.convert(bo, EnforcementCarouselBanner.class); validEntityBeforeSave(add); + add.setCreateBy(LoginHelper.getUserId() != null ? LoginHelper.getUserId() : null); + add.setCreateByName(LoginHelper.getUsername() != null ? LoginHelper.getUsername() : null); boolean flag = baseMapper.insert(add) > 0; //fujian diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/SysNoticeInfoServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/SysNoticeInfoServiceImpl.java index edbaea3a..96a03407 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/SysNoticeInfoServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/SysNoticeInfoServiceImpl.java @@ -135,17 +135,22 @@ public class SysNoticeInfoServiceImpl implements ISysNoticeInfoService { lqw.orderByDesc(SysNoticeInfo::getCreateTime); lqw.like(StringUtils.isNotBlank(bo.getNoticeContent()), SysNoticeInfo::getNoticeContent, bo.getNoticeContent()); - // 发布时间根据开始时间和结束时间进行范围过滤 - if (bo.getStartTime() != null) { - lqw.ge(SysNoticeInfo::getPublishTime, bo.getStartTime()); - } - if (bo.getEndTime() != null) { - lqw.le(SysNoticeInfo::getPublishTime, bo.getEndTime()); + // 保存时间/创建时间范围筛选 + if (bo.getStartTime() != null && bo.getEndTime() != null) { + lqw.between(SysNoticeInfo::getCreateTime, bo.getStartTime(), bo.getEndTime()); + } else if (bo.getStartTime() != null) { + lqw.ge(SysNoticeInfo::getCreateTime, bo.getStartTime()); + } else if (bo.getEndTime() != null) { + lqw.le(SysNoticeInfo::getCreateTime, bo.getEndTime()); } lqw.eq(bo.getDisplayDays() != null, SysNoticeInfo::getDisplayDays, bo.getDisplayDays()); lqw.eq(bo.getTargetPlatform() != null, SysNoticeInfo::getTargetPlatform, bo.getTargetPlatform()); lqw.eq(bo.getStatus() != null, SysNoticeInfo::getStatus, bo.getStatus()); + if (bo.getStatus() == null) { + lqw.in(SysNoticeInfo::getStatus, 2, 3); + } + lqw.eq(bo.getCreateBy() != null, SysNoticeInfo::getCreateBy, bo.getCreateBy()); lqw.eq(bo.getEffectiveTime() != null, SysNoticeInfo::getEffectiveTime, bo.getEffectiveTime()); lqw.eq(StringUtils.isNotBlank(bo.getBureauDeptId()), SysNoticeInfo::getBureauDeptId, bo.getBureauDeptId()); lqw.eq(StringUtils.isNotBlank(bo.getOrganId()), SysNoticeInfo::getOrganId, bo.getOrganId()); diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/carouselBanner.ts b/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/carouselBanner.ts index a67e5e05..bc068fb1 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/carouselBanner.ts +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/carouselBanner.ts @@ -6,6 +6,7 @@ export interface CarouselBannerQuery { title?: string; targetPlatform?: number; status?: number; + createBy?: number; carouselPosition?: number; startTime?: string; endTime?: string; diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/noticeInfo.ts b/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/noticeInfo.ts index 4e373614..bfcd3cf2 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/noticeInfo.ts +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/api/supervision/noticeInfo.ts @@ -6,6 +6,7 @@ export interface NoticeInfoQuery { noticeContent?: string; targetPlatform?: number; status?: number; + createBy?: number; startTime?: string; endTime?: string; pageNum?: number; @@ -33,6 +34,8 @@ export interface NoticeInfoVo { status?: number; statusLabel?: string; effectiveTime?: string; + createTime?: string; + updateTime?: string; } export function listNoticeInfo(query: NoticeInfoQuery) { diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/router/index.ts b/zdxt-web-client/zdxt-admin-plus-ui/src/router/index.ts index 278eb8a0..f91fdae3 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/router/index.ts +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/router/index.ts @@ -123,6 +123,19 @@ export const constantRoutes: RouteRecordRaw[] = [ } ] }, + { + path: '/supervision/carouselBanner/draft', + component: Layout, + hidden: true, + children: [ + { + path: '', + component: () => import('@/views/supervision/carouselBanner/draft.vue'), + name: 'CarouselBannerDraft', + meta: { title: '轮播图草稿箱', activeMenu: '/supervision/carouselBanner' } + } + ] + }, { path: '/supervision/noticeInfo/add', component: Layout, @@ -149,6 +162,19 @@ export const constantRoutes: RouteRecordRaw[] = [ } ] }, + { + path: '/supervision/noticeInfo/draft', + component: Layout, + hidden: true, + children: [ + { + path: '', + component: () => import('@/views/supervision/noticeInfo/draft.vue'), + name: 'NoticeInfoDraft', + meta: { title: '公告草稿箱', activeMenu: '/supervision/noticeInfo' } + } + ] + }, { path: '/supervision/educationServices/add', component: Layout, diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/add.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/add.vue index 07372018..e1831166 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/add.vue +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/add.vue @@ -58,6 +58,7 @@ 取消 + 保存草稿箱 发布 @@ -160,7 +161,7 @@ const handleCancel = () => { proxy?.$tab.closePage(); }; -const handleSubmit = async () => { +const submitForm = async (status: number, successMessage: string) => { if (!formRef.value) return; const isValid = await formRef.value.validate().catch(() => false); if (!isValid) return; @@ -174,24 +175,32 @@ const handleSubmit = async () => { displayDays: form.displayDays, linkUrl: form.linkUrl, imageUrl: form.imageUrl, - status: 2, + status, type: 1, isDelete: 0 }); if (res.code === 200) { - ElMessage.success('发布成功'); + ElMessage.success(successMessage); proxy?.$tab.closePage(); } else { - ElMessage.error(res.msg || '发布失败'); + ElMessage.error(res.msg || '操作失败'); } } catch (error) { - console.error('发布失败:', error); - ElMessage.error('发布失败,请重试'); + console.error('提交失败:', error); + ElMessage.error('操作失败,请重试'); } finally { submitting.value = false; } }; +const handleSaveDraft = () => { + submitForm(1, '已保存到草稿箱'); +}; + +const handleSubmit = () => { + submitForm(2, '发布成功'); +}; + const loadDictOptions = async () => { try { const platformRes = await getDicts('web_publishing_platform'); diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/draft.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/draft.vue new file mode 100644 index 00000000..3970c0ac --- /dev/null +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/draft.vue @@ -0,0 +1,350 @@ + + + + + diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/edit.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/edit.vue index ab2cb7c0..920f3b0b 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/edit.vue +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/edit.vue @@ -58,7 +58,8 @@ 取消 - 保存 + 保存草稿箱 + 发布 @@ -166,7 +167,7 @@ const handleCancel = () => { proxy?.$tab.closePage(); }; -const handleSubmit = async () => { +const submitForm = async (status: number, successMessage: string) => { if (!formRef.value) return; const isValid = await formRef.value.validate().catch(() => false); if (!isValid) return; @@ -181,24 +182,32 @@ const handleSubmit = async () => { displayDays: form.displayDays, linkUrl: form.linkUrl, imageUrl: form.imageUrl, - status: form.status, + status, type: form.type, isDelete: 0 }); if (res.code === 200) { - ElMessage.success('保存成功'); + ElMessage.success(successMessage); proxy?.$tab.closePage(); } else { - ElMessage.error(res.msg || '保存失败'); + ElMessage.error(res.msg || '操作失败'); } } catch (error) { - console.error('保存失败:', error); - ElMessage.error('保存失败,请重试'); + console.error('提交失败:', error); + ElMessage.error('操作失败,请重试'); } finally { submitting.value = false; } }; +const handleSaveDraft = () => { + submitForm(1, '已保存到草稿箱'); +}; + +const handleSubmit = () => { + submitForm(2, '发布成功'); +}; + const loadDetail = async () => { const id = route.params.id as string; if (!id) { diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/index.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/index.vue index 2e9d9d16..cb495c89 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/index.vue +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/carouselBanner/index.vue @@ -51,6 +51,7 @@
新增 + 草稿箱 删除 @@ -219,6 +220,10 @@ const handleAdd = () => { router.push('/supervision/carouselBanner/add'); }; +const handleOpenDraft = () => { + router.push('/supervision/carouselBanner/draft'); +}; + const handleBatchDelete = () => { if (selectedRows.value.length === 0) { ElMessage.warning('请选择要删除的数据'); diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/draft.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/draft.vue new file mode 100644 index 00000000..a27e2365 --- /dev/null +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/draft.vue @@ -0,0 +1,325 @@ + + + + + diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/edit.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/edit.vue index 09546c6d..4bbdb6b9 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/edit.vue +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/edit.vue @@ -38,7 +38,7 @@ 取消 保存草稿箱 - 保存 + 发布
@@ -121,8 +121,7 @@ const handleSaveDraft = () => { }; const handleSubmit = () => { - const status = form.status === 1 ? 2 : form.status; - submitForm(status, '保存成功'); + submitForm(2, '发布成功'); }; const loadDetail = async () => { diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/index.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/index.vue index 771a4591..a0d58240 100644 --- a/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/index.vue +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/supervision/noticeInfo/index.vue @@ -51,6 +51,7 @@
新增 + 草稿箱 删除 @@ -209,6 +210,10 @@ const handleAdd = () => { router.push('/supervision/noticeInfo/add'); }; +const handleOpenDraft = () => { + router.push('/supervision/noticeInfo/draft'); +}; + const handleBatchDelete = () => { if (selectedRows.value.length === 0) { ElMessage.warning('请选择要删除的数据');