傅行帆 hace 5 años
padre
commit
10b99b8652
Se han modificado 1 ficheros con 97 adiciones y 0 borrados
  1. 97
    0
      src/pages/promote/detail.jsx

+ 97
- 0
src/pages/promote/detail.jsx Ver fichero

@@ -0,0 +1,97 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Input, Menu, Dropdown, Button, Icon, message, Table, Divider, Tag, Select, Form, Alert } from 'antd';
3
+import { FormattedMessage } from 'umi-plugin-react/locale';
4
+import XForm, { FieldTypes } from '../../components/XForm';
5
+import router from 'umi/router';
6
+import apis from '../../services/apis';
7
+import request from '../../utils/request';
8
+import Wangedit from '../../components/Wangedit/Wangedit'
9
+import moment from 'moment';
10
+
11
+
12
+const header = props => {
13
+    const newsId = props.location.query.id
14
+  
15
+    const [ data, setData ] = useState({})
16
+    if(newsId){
17
+      useEffect(() => {
18
+        getNewData(newsId);
19
+      },[])
20
+  
21
+    // 查询列表
22
+    const getNewData = (newsId) => {
23
+      request({
24
+          ...apis.officenews.get,
25
+          urlData: { id: newsId }
26
+      }).then((data) => {
27
+        setData(data)
28
+      }).catch((err) => {
29
+        message.error(err.msg || err.message)
30
+      })
31
+    }
32
+    }
33
+  
34
+    const fields = [
35
+      {
36
+        label: '资讯封面',
37
+        name: 'thumb',
38
+        type: FieldTypes.ImageUploader,
39
+        value: data.thumb,
40
+        rules: [
41
+            { required: true, message: '请选择资讯封面' },
42
+        ],
43
+        help: '建议尺寸:500px*400px,比例5:4,格式:jpg,用于:橙蕉官网新闻资讯列表',
44
+      },    
45
+      {
46
+        label: '资讯标题',
47
+        name: 'title',
48
+        type: FieldTypes.Text,
49
+        value: data.title
50
+      },
51
+      {
52
+        label: '资讯详情',
53
+        name: 'content',
54
+        value: data.content,
55
+        render: <Wangedit />
56
+      },
57
+      {
58
+        label: '状态',
59
+        name: 'status',
60
+        value: data.status,
61
+        render: <Select style={{ width: '180px' }} placeholder="发布状态">
62
+                    <Option value={0}>已发布</Option>
63
+                    <Option value={1}>未发布</Option>
64
+                </Select>,
65
+      },
66
+    ]
67
+  
68
+     
69
+    const handleSubmit = (values) => {
70
+      if(newsId){
71
+          request({ ...apis.officenews.update, urlData: { id: newsId }, data: { ...values }}).then((data) => {
72
+            cancelPage();
73
+          }).catch((err) => {
74
+            message.error(err.msg || err.message)
75
+          })
76
+        }else{
77
+          request({ ...apis.officenews.save, data: { ...values }}).then((data) => {
78
+            cancelPage();
79
+          }).catch((err) => {
80
+            message.error(err.msg || err.message)
81
+          })
82
+        }
83
+    }
84
+  
85
+    const cancelPage = () => {
86
+      router.push({
87
+        pathname: '/officenews/index',
88
+      });
89
+    }
90
+  
91
+    return (
92
+      <XForm onSubmit={handleSubmit} onCancel={cancelPage} fields={fields}></XForm>
93
+    )
94
+  }
95
+  
96
+  const WrappedNormalLoginForm = Form.create({ name: 'header' })(header);
97
+  export default WrappedNormalLoginForm