songxy 1 год назад
Родитель
Сommit
19c08d6397

+ 3 - 3
client/src/AppNews.vue

@@ -2,7 +2,7 @@
   <div class="lookDetailBox">
     <h2>{{ detailForm.title }}</h2>
     <p>
-      <span>发布时间:{{ detailForm.happenTime }}</span>
+      <span>发布时间:{{ detailForm.adddate }}</span>
       <span style="margin-left: 60px">阅读次数:{{ detailForm.readNum }}</span>
     </p>
     <div v-html="detailForm.content"></div>
@@ -13,12 +13,12 @@ import request from '@/config/axios'
 
 const detailForm = ref<{
   title: string
-  happenTime: string
+  adddate: string
   readNum: number
   content: string
 }>({
   title: '',
-  happenTime: '',
+  adddate: '',
   readNum: 0,
   content: ''
 })

+ 1 - 1
client/src/views/OaSystem/home/components/CardItemOne.vue

@@ -6,7 +6,7 @@
           <img :src="item.imgurl" />
         </div>
         <p class="title">{{ item.title }}</p>
-        <p class="time"><Icon icon="ep:clock" />{{ item.happenTime }}</p>
+        <p class="time"><Icon icon="ep:clock" />{{ item.adddate }}</p>
         <p class="desc">
           {{ item.description }}
         </p>

+ 1 - 1
client/src/views/OaSystem/newsCenter/newsLook/index.vue

@@ -6,7 +6,7 @@
           <img :src="item.imgurl" />
         </div>
         <p class="title">{{ item.title }}{{ item.title }}</p>
-        <p class="time"><Icon icon="ep:clock" />{{ item.happenTime }}</p>
+        <p class="time"><Icon icon="ep:clock" />{{ item.adddate }}</p>
         <p class="desc">
           {{ item.description }}
         </p>

+ 3 - 3
client/src/views/OaSystem/newsCenter/newsLook/lookDetail.vue

@@ -2,7 +2,7 @@
   <div class="lookDetailBox">
     <h2>{{ detailForm.title }}</h2>
     <p>
-      <span>发布时间:{{ detailForm.happenTime }}</span>
+      <span>发布时间:{{ detailForm.adddate }}</span>
       <span style="margin: 0px 50px">阅读次数:{{ detailForm.readNum }}</span>
       <span class="copy_line" @click="copyHandle">分享链接</span>
     </p>
@@ -16,12 +16,12 @@ import { ElMessage } from 'element-plus'
 
 const detailForm = ref<{
   title: string
-  happenTime: string
+  adddate: string
   readNum: number
   content: string
 }>({
   title: '',
-  happenTime: '',
+  adddate: '',
   readNum: 0,
   content: ''
 })

+ 23 - 12
client/src/views/OaSystem/newsCenter/newsSetting/editor.vue

@@ -87,7 +87,7 @@
       <span v-else>
         <el-button type="primary" @click="onSubmit(ruleFormRef)">保存</el-button>
       </span>
-      <el-button>取消</el-button>
+      <el-button @click="router.back()">取消</el-button>
     </div>
   </div>
 </template>
@@ -95,6 +95,7 @@
 <script setup lang="ts">
 import { useRoute } from 'vue-router'
 import axios from 'axios'
+import moment from 'moment'
 import { Base64 } from 'js-base64'
 import request from '@/config/axios'
 import { ElMessage, ElMessageBox, Action, FormRules, FormInstance } from 'element-plus'
@@ -107,8 +108,9 @@ const initFormData: any = {
   description: '',
   imgurl: '',
   happenTime: '',
+  adddate: '',
   sort: 0,
-  status: 0, //0 不显示 1 显示
+  status: 1, //0 不显示 1 显示
   isTop: 0,
   isSyncSite: 1,
   content: '',
@@ -144,7 +146,7 @@ const rules = reactive<
   }
 })
 //同步官网Switch组件
-function beforeChangeHandle() {
+function beforeChangeHandle(): boolean | Promise<boolean> {
   const val: number = formData.value.isSyncSite
   if (val === 0) return true
   return new Promise((resolve, reject) => {
@@ -169,26 +171,36 @@ function onSubmit(formEl: FormInstance | undefined, num?: number): void {
     if (valid) {
       let urlApi: string = ''
 
+      const sendData = {
+        ...formData.value
+      }
       if (eTypeRef.value === 'add') {
         urlApi = '/adm/article/add'
-        if (num === 1) {
-          formData.value.happenTime = new Date()
-          formData.value.isPub = 1
-        }
       } else {
         urlApi = '/adm/article/update'
       }
-      request.post({ url: urlApi, data: formData.value }).then((result) => {
+
+      if (formData.value['isPub'] === 0 && num === 1) {
+        sendData['adddate'] = moment().format('YYYY-MM-DD HH:mm:ss')
+        sendData['isPub'] = 1
+      }
+      request.post({ url: urlApi, data: sendData }).then((result) => {
         if (result) {
           ElMessage({
             showClose: true,
             message: '保存成功.',
             type: 'success'
           })
-          if (formData.value.isPub === 1 && formData.value.isSyncSite === 1) {
+          if (
+            formData.value['isPub'] === 0 &&
+            sendData['isPub'] === 1 &&
+            formData.value.isSyncSite === 1
+          ) {
             syncSiteAjax(formData.value)
           }
-          router.back()
+          if (num !== 0) {
+            router.back()
+          }
         }
       })
     } else {
@@ -207,8 +219,7 @@ const syncSiteAjax = async (data): Promise<void> => {
     title: data.title,
     description: data.description,
     imgurl: data.imgurl,
-    adddate: data.happenTime,
-    sort: data.sort,
+    adddate: data.adddate,
     status: data.status,
     content: data.content,
     seo_title: data.seoTitle,

+ 41 - 1
client/src/views/OaSystem/newsCenter/newsSetting/index.vue

@@ -25,7 +25,7 @@
         </el-table-column>
         <el-table-column prop="creatorName" label="发布人" width="120" />
         <el-table-column label="创建时间" prop="createTime" width="200" />
-        <el-table-column label="发布时间" prop="happenTime" width="120" />
+        <el-table-column label="发布时间" prop="adddate" width="200" />
         <el-table-column label="阅读次数" prop="readNum" width="100" />
         <el-table-column label="开关" width="120">
           <template #default="scope">
@@ -74,6 +74,9 @@
 </template>
 
 <script setup lang="ts">
+import axios from 'axios'
+import moment from 'moment'
+import { Base64 } from 'js-base64'
 import { ElMessage } from 'element-plus'
 import { useRouter } from 'vue-router'
 import request from '@/config/axios'
@@ -118,8 +121,45 @@ const deleteHandle = async (row): Promise<void> => {
 }
 const pushEditorHandle = (sendData) => {
   sendData['isPub'] = 1
+  sendData['adddate'] = moment().format('YYYY-MM-DD HH:mm:ss')
   const urlApi = `/adm/article/update`
   request.post({ url: urlApi, data: sendData })
+  syncSiteAjax(sendData)
+}
+
+//同步官网接口——需要代理转发
+const syncSiteAjax = async (data): Promise<void> => {
+  const header = {
+    token: 'L7grJk5JnyWhsnX0D5OZ8sero5PiZkk7'
+  }
+  const body = {
+    sid: data.sid,
+    title: data.title,
+    description: data.description,
+    imgurl: data.imgurl,
+    adddate: data.adddate,
+    status: data.status,
+    content: data.content,
+    seo_title: data.seoTitle,
+    seo_keywords: data.seoKeywords,
+    seo_desc: data.seoDesc
+  }
+  const sendData = {
+    _encrypted_data: Base64.encode(JSON.stringify(body))
+  }
+  const result = await axios({
+    url: '/widewebApi/api/Article/pushNews',
+    method: 'POST',
+    data: sendData,
+    headers: header
+  })
+  if (result && result['data']) {
+    ElMessage({
+      showClose: true,
+      message: '新闻同步官网成功.',
+      type: 'success'
+    })
+  }
 }
 const switchHandle = (sendData) => {
   const urlApi = `/adm/article/update`

+ 1 - 1
client/src/views/OaSystem/officeCenter/main/index.vue

@@ -18,9 +18,9 @@ const iframeUrl: string = 'http://10.10.10.7:18080/workflow/HandlerCaseCenter/in
   height: calc(100% - 20px);
   background-color: #fff;
   border-radius: 20px;
-  padding: 20px;
   position: relative;
   text-align: center;
+
   > iframe {
     width: 100%;
     height: 100%;

+ 4 - 1
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/controller/admin/article/vo/ArticleBaseVO.java

@@ -91,7 +91,8 @@ public class ArticleBaseVO {
      * 发生时间
      */
     @Schema(description = "发生时间")
-    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private Date happenTime;
 
     /**
@@ -116,6 +117,8 @@ public class ArticleBaseVO {
      * 之前文章发生时间
      */
     @Schema(description = "之前文章发生时间")
+    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
     private String adddate;
 
     /**