瀏覽代碼

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner-admin into dev

lifanagju_citu 2 周之前
父節點
當前提交
1b21c23be2

+ 2 - 0
.env.demo

@@ -6,6 +6,8 @@ VITE_DEV=true
 # 请求路径
 VITE_BASE_URL='http://menduner.citupro.com:6868' # 测试环境
 
+VITE_NODE_BASE_URL='http://menduner.citupro.com:3300'
+
 # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务
 VITE_UPLOAD_TYPE=server
 

+ 2 - 0
.env.dev

@@ -6,6 +6,8 @@ VITE_DEV=true
 # 请求路径
 VITE_BASE_URL=''
 
+VITE_NODE_BASE_URL='https://ops.menduner.com:3300'
+
 # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持S3服务
 VITE_UPLOAD_TYPE=server
 # 上传路径

+ 3 - 2
.env.localDev

@@ -4,8 +4,9 @@ NODE_ENV=development
 VITE_DEV=true
 
 # 请求路径
-# VITE_BASE_URL='https://www.menduner.com:1443/' # 生产环境
-VITE_BASE_URL='http://192.168.3.80' # 测试环境
+VITE_BASE_URL='http://192.168.3.80'
+
+VITE_NODE_BASE_URL=''
 
 # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务
 VITE_UPLOAD_TYPE=server

+ 1 - 1
src/views/menduner/system/talentMap/maintenance/gather/components/index_split.vue

@@ -128,7 +128,7 @@ import { TalentMap } from '@/api/menduner/system/talentMap'
 import MergeForm from '@/views/menduner/system/talentMap/components/merge.vue'
 import FormPage from '@/views/menduner/system/talentMap/components/FormPage.vue'
 import { timesTampChange, timestampToAge } from '@/utils/transform/date'
-import Search from './components/search.vue'
+import Search from './search.vue'
 import { useUpload } from '@/components/UploadFile/src/useUpload'
 import { commonApi } from '@/api/menduner/common'
 import { Base64 } from 'js-base64'

+ 30 - 32
src/views/menduner/system/talentMap/maintenance/gather/webPageParsing/index.vue

@@ -5,19 +5,19 @@
 			:model="queryParams"
 			ref="queryFormRef"
 			:inline="true"
-			label-width="90px"
+			label-width="110px"
 		>
-			<el-form-item label="url提取内容" prop="urls">
+			<el-form-item label="微信公众号链接" prop="urls">
 				<el-input
 					v-model="queryParams.urls"
-					class="!w-60vw"
+					class="!w-50vw"
 					type="textarea"
 					:rows="2"
 					placeholder="请输入需要提取的页面,多个页面请用 ',' 隔开"
 				/>
 			</el-form-item>
 			<el-form-item>
-				<el-button type="primary" plain :loading="loading" @click="handleExecute">执行</el-button>
+				<el-button type="primary" plain :loading="loading" @click="handleAnalysis">解析</el-button>
 			</el-form-item>
 		</el-form>
 	</ContentWrap>
@@ -29,14 +29,15 @@
 					<template #header>
 						<div class="flex items-center justify-between">
 							<el-text class="flex-1" truncated>{{ content.url }}</el-text>
-							<div class="!w-40px">
+							<!-- <div class="!w-40px">
 								<Icon icon="ep:view" size="25" class="ml-10px cursor-pointer" color="#409eff" @click="showPage(content)" />
-							</div>
+							</div> -->
 						</div>
 					</template>
           <div class="overflow-y-auto !h-360px" v-if="content.data">
             <pre>{{ content.data }}</pre>
           </div>
+					<el-button type="primary" plain class="mt-10px" @click="showPage(content)">预览</el-button>
 					<el-button type="primary" plain class="mt-10px" @click="handleConvert(content)">转换为markdown格式</el-button>
 				</el-card>
 			</el-col>
@@ -170,36 +171,33 @@ const showPage = (res) => {
   }
 }
 
-// 执行
-const handleExecute = async () => {
+// 解析
+const handleAnalysis = async () => {
 	if (!queryParams.urls) return
 	contents.value = []
 	loading.value = true
-	try {
-		const urlArr = queryParams.urls.split(',').map(url => url.trim()).filter(Boolean)
-		const isWeChatUrl = urlArr.every(url => url.includes('https://mp.weixin.qq.com'))
-		if (!isWeChatUrl) {
-			message.warning('请输入微信公众文章链接')
-			return
-		}
-
-		const requests = urlArr.map(url => {
-			const path = url.split('mp.weixin.qq.com')[1]
-			const realurl = `/weixin-article${path}`
-			return axios.get(realurl).then(res => ({
-				url: url,
-				data: res.data
-			}))
-		})
-
-		const results = await Promise.all(requests)
-		contents.value = results.filter(item => item.data)
-	} catch (e) {
-		console.error(e)
-		message.error('获取失败')
-	} finally {
-		loading.value = false
+
+	const urlArr = queryParams.urls.split(',').map(url => url.trim()).filter(Boolean)
+
+	const isWeChatUrl = urlArr.every(url => url.includes('https://mp.weixin.qq.com'))
+	if (!isWeChatUrl) {
+		message.warning('请输入微信公众文章链接')
+		return
 	}
+
+	const base_url = import.meta.env.VITE_NODE_BASE_URL
+	console.log(base_url, 'base_url')
+	// const base_url = 'http://menduner.citupro.com:3300'
+
+	axios.post(`${base_url}/process-urls`, { urlArr }, { timeout: 60000 }).then(res => {
+		console.log(res, '解析内容')
+		contents.value = res?.data?.contents ?? []
+	}).catch(err => {
+		console.log(err, 'error');
+		message.error(err.message)
+	}).finally(_ => {
+		loading.value = false
+	})
 }
 </script>
 

+ 9 - 4
vite.config.ts

@@ -46,11 +46,16 @@ export default ({ command, mode }: ConfigEnv): UserConfig => {
           changeOrigin: true, // 是否支持跨域
           rewrite: (path) => path.replace(new RegExp(`^/api`), '/api')
         },
-        '/weixin-article': {
-          target: 'https://mp.weixin.qq.com/',
+        // '/weixin-article': {
+        //   target: 'https://mp.weixin.qq.com/',
+        //   secure: true,
+        //   changeOrigin: true,
+        //   rewrite: (path) => path.replace(new RegExp(`^/weixin-article`), '')
+        // },
+        '/process-urls': {
+          target: 'http://localhost:3300',
           secure: true,
-          changeOrigin: true,
-          rewrite: (path) => path.replace(new RegExp(`^/weixin-article`), '')
+          changeOrigin: true
         }
       }
     },