فهرست منبع

Merge branch 'feature_moreStaDimen' of Web/contentCooper into master

jihuaqiang 4 روز پیش
والد
کامیت
c12f1114c4

+ 3 - 3
src/views/publishContent/weCom/components/linkDetailModal/index.tsx

@@ -22,11 +22,11 @@ interface LinkDetailModalProps {
 
 
 const downloadCover = (video: WeComPlan) => {
-  if (video.cover) {
+  if (video.shareCover) {
     const link = document.createElement('a');
-    link.href = video.cover;
+    link.href = video.shareCover;
     // Attempt to infer filename, might need refinement
-    const filename = video.cover.substring(video.cover.lastIndexOf('/') + 1) || `cover_${video.id}.jpg`;
+    const filename = video.shareCover.substring(video.shareCover.lastIndexOf('/') + 1) || `cover_${video.id}.jpg`;
     link.download = filename;
     link.target = '_blank'; // Open in new tab might be safer for some browsers
     link.rel = 'noopener noreferrer';

+ 1 - 1
src/views/publishContent/weCom/components/planDetailModal/index.tsx

@@ -165,7 +165,7 @@ const PlanDetailModal: React.FC<PlanDetailModalProps> = ({ visible, onClose, pla
             <Button 
               type="link" 
               icon={<DownloadOutlined />} 
-              onClick={() => downloadFile(planData.cover, planData.title + '_cover.jpg')} 
+              onClick={() => downloadFile(planData.shareCover || planData.cover, planData.title + '_cover.jpg')} 
               size="small"
             >
               下载封面

+ 1 - 1
src/views/publishContent/weCom/index.tsx

@@ -103,7 +103,7 @@ const WeGZHContent: React.FC = () => {
 			render: (_, record) => (
 				<Space size="middle" wrap>
 					<Button type="link" onClick={() => playVideo(record)}>播放</Button>
-					<Button type="link" onClick={() => downloadFile(record.cover, record.title + '_cover')}>下载封面</Button>
+					<Button type="link" onClick={() => downloadFile(record.shareCover || record.cover, record.title + '_cover')}>下载封面</Button>
 					<Button type="link" onClick={() => showQrCodeModal(record.pageUrl)}>二维码</Button>
 					<Button type="link" onClick={() => copyToClipboard(record.pageUrl)}>复制链接</Button>
 					<Button type="link" onClick={() => showDetailModal(record)}>详情</Button>

+ 1 - 0
src/views/publishContent/weCom/type.ts

@@ -1,5 +1,6 @@
 export interface WeComPlan {
 	cover: string;
+	shareCover?: string;
 	createTimestamp: number;
 	id: number;
 	pageUrl: string;

+ 3 - 3
src/views/publishContent/weGZH/components/PunlishPlanDetailModal/index.tsx

@@ -68,11 +68,11 @@ const PunlishPlanDetailModal: React.FC<PunlishPlanDetailModalProps> = ({
 	};
 
 	const downloadCover = (video: VideoItem) => {
-		if (video.cover) {
+		if (video.shareCover) {
 			const link = document.createElement('a');
-			link.href = video.cover;
+			link.href = video.shareCover;
 			// Attempt to infer filename, might need refinement
-			const filename = video.cover.substring(video.cover.lastIndexOf('/') + 1) || `cover_${video.videoId}.jpg`;
+			const filename = video.shareCover.substring(video.shareCover.lastIndexOf('/') + 1) || `cover_${video.videoId}.jpg`;
 			link.download = filename;
 			link.target = '_blank'; // Open in new tab might be safer for some browsers
 			link.rel = 'noopener noreferrer';

+ 1 - 0
src/views/publishContent/weGZH/components/types.ts

@@ -1,5 +1,6 @@
 export interface VideoItem {
 	cover: string,
+	shareCover?: string,
 	customCover: string,
 	customCoverType: number,
 	score: number,

+ 53 - 1
src/views/weData/gzh/index.tsx

@@ -110,8 +110,40 @@ const Gzh: React.FC = () => {
       dataIndex: 'score',
       key: 'score',
     },
-  ];
+	];
 
+	const separateVideoColumns:TableProps['columns'] = [
+		{
+			title: '日期',
+			dataIndex: 'dateStr',
+			key: 'dateStr',
+		},
+		{
+      title: '公众号',
+      dataIndex: 'name',
+      key: 'name',
+    },
+    {
+      title: '视频ID',
+      dataIndex: 'videoId',
+      key: 'videoId',
+		},
+		{
+      title: '视频标题',
+      dataIndex: 'title',
+      key: 'title',
+    },
+    {
+      title: '小程序访问人数',
+      dataIndex: 'firstLevel',
+      key: 'firstLevel',
+    },
+    {
+      title: '本渠道裂变率',
+      dataIndex: 'score',
+      key: 'score',
+    },
+	];
   const fetchGzhData = async (page = 1, pageSize = 10, type = 0) => {
     try {
       setLoading(true);
@@ -244,6 +276,26 @@ const Gzh: React.FC = () => {
             ),
 					},
 					{
+            key: "4",
+            label: "自动回复分账号分视频",
+            children: (
+              <Table
+                dataSource={separateDataSource}
+                columns={separateVideoColumns}
+                rowKey="dateStr"
+                loading={loading}
+                pagination={{
+                  current: pagination.current,
+                  pageSize: pagination.pageSize,
+                  total: pagination.total,
+                  showSizeChanger: true,
+                  showTotal: (total) => `共 ${total} 条`,
+                }}
+                onChange={handleTableChange}
+              />
+            ),
+					},
+					{
             key: "2",
             label: "服务号总计",
             children: (

+ 7 - 12
src/views/weData/qw/index.tsx

@@ -90,7 +90,12 @@ const Qw: React.FC = () => {
       title: '日期',
       dataIndex: 'dateStr',
       key: 'dateStr',
-    },
+		},
+		{
+			title: '子渠道',
+			dataIndex: 'subChannel',
+			key: 'subChannel',
+		},
     {
       title: '视频标题',
       dataIndex: 'title',
@@ -128,17 +133,7 @@ const Qw: React.FC = () => {
 			title: '本渠道裂变率',
 			dataIndex: 'score',
 			key: 'score',
-		},
-		{
-      title: '预估单价',
-      dataIndex: 'unitPrice',
-      key: 'unitPrice',
-		},
-		{
-      title: '建议结算金额',
-      dataIndex: 'settlementAmount',
-      key: 'settlementAmount',
-    }
+		}
 	];
 
   const fetchQwData = async (page = 1, pageSize = 10, type = 0) => {