From e29d2313a38c0278577e645b4bb110e677175e10 Mon Sep 17 00:00:00 2001
From: liuwh <liuwh@hugeinfo.com.cn>
Date: Sun, 23 Feb 2020 12:36:07 +0800
Subject: [PATCH] 提交

---
 SunshineIns/src/page/ActiveManage.jsx |  121 +++++++++++++++++++++++++++++++++------
 1 files changed, 101 insertions(+), 20 deletions(-)

diff --git a/SunshineIns/src/page/ActiveManage.jsx b/SunshineIns/src/page/ActiveManage.jsx
index c457ae4..bc789c1 100644
--- a/SunshineIns/src/page/ActiveManage.jsx
+++ b/SunshineIns/src/page/ActiveManage.jsx
@@ -1,15 +1,10 @@
-/**
- * 徐祥健<xuxj@hugeinfo.com.cn>
- * 2018年8月28日 10:41
- *
- */
-
 
 import React from 'react';
 
 import HeadView from '../view/HeadView';
 import TableBtnView from '../view/TableBtnView';
-import { Divider, Modal, message, Tooltip, Progress } from 'antd'
+import CommonSearchForm from '../view/CommonSearchForm';
+import { Divider, Modal, message, Button, Progress } from 'antd'
 import moment from 'moment'
 import Fetch from '../fetch';
 import { domain } from '../fetch/_fetch';
@@ -40,12 +35,48 @@
             return "普法预约";
     }
 }
+
+const taskNodeIds = {
+    'act_1': '南检活动',
+    'act_2': '法治培训',
+    'act_3': '普法预约',
+}
+
+const activityTypeList = [
+    'act_1',
+    'act_2',
+    'act_3',
+]
+
+const activityStatusIds = {
+    0: '未发布',
+    1: '报名中',
+    2: '活动中',
+    3: '已结束',
+    100: '已摇号',
+}
+
+const activityStatusList = [
+    0,
+    1,
+    2,
+    3,
+    100,
+]
 export default class ActiveManage extends React.Component {
     constructor(props) {
         super(props);
         this.state = {
             data: [],
-            resetKey: Date.now()
+            resetKey: Date.now(),
+            loading:false,
+            formData: {
+                __key: Date.now(),
+                activityType: '',
+                activityStatus: '',
+                startTime: '',
+                endTime: '',
+            }
         };
     }
 
@@ -53,17 +84,35 @@
         document.title = '活动管理';
         this.getData();
     }
+
+    setFormData = data => {
+        console.log('form', data);
+        this.setState({
+            formData: data,
+        });
+    }
+
+    searchonClick = data => {
+        console.log('form', data);
+        this.setState({
+            formData: data,
+        });
+        this.getData();
+    }
+
     getData = () => {
         // this.setState({
         //     data: []
         // });
-        Fetch.activeManage()
+        this.setState({loading:true})
+        Fetch.activeManage({ ...this.state.formData })
             .then(res => {
                 for (var i = 0; i < res.length; i++) {
                     res[i]['index'] = i + 1;
                 }
                 this.setState({
-                    data: res
+                    data: res,
+                    loading:false
                 });
             });
     }
@@ -71,7 +120,7 @@
         this.props.history.push("/activeManageEdit/" + id);
     }
 
-    signIn= (id) => {
+    signIn = (id) => {
         window.open('index.html#/signIn/' + id);
     }
 
@@ -162,26 +211,58 @@
                             <Divider type="vertical" />
                             <label className='theme-color' onClick={() => this.deleteItems(record.id)} style={{ cursor: 'pointer' }}>删除</label>
                         </span>
-                        : 
-                    record.status == 2 ?
+                        :
+                        record.status == 2 ?
                             <span>
                                 <label className='theme-color' onClick={() => this.showModal(record.id)} style={{ cursor: 'pointer' }}>查看</label>
                                 <Divider type="vertical" />
                                 <label className='theme-color' onClick={() => this.signIn(record.id)} style={{ cursor: 'pointer' }}>签到上墙</label>
                             </span>
-                    :
-                    <span><label className='theme-color' onClick={() => this.showModal(record.id)} style={{ cursor: 'pointer' }}>查看</label></span>
+                            :
+                            <span><label className='theme-color' onClick={() => this.showModal(record.id)} style={{ cursor: 'pointer' }}>查看</label></span>
 
                 )
             ),
         }];
-        const { data, resetKey } = this.state;
+        const { data, resetKey, formData, loading } = this.state;
         return (
-            <div className="app-page">
+            <div className="app-page" >
                 <HeadView history={this.props.history} />
-                <TableBtnView key={-resetKey} type="infoManage" name='活动一览' btnName='活动发布' onClick={() => this.showModal('new')}>
-                </TableBtnView>
-                <TableView columns={columns} data={data} pageSize='10' size='default' />
+                <div style={{ marginLeft: '90%', marginBottom: '20px', marginTop: '20px' }}>
+                    <Button type="primary" size='large' onClick={() => this.showModal('new')}>活动发布</Button>
+                </div>
+                {/* <TableBtnView key={-resetKey} type="infoManage" name='活动一览' btnName='活动发布' onClick={() => this.showModal('new')}>
+                </TableBtnView> */}
+                <div style={{ background: '#fff', margin: 20 }}>
+                    <CommonSearchForm
+                        {...this.props}
+                        formData={formData}
+                        setFormData={this.setFormData}
+                        searchonClick={this.searchonClick}
+                        pathName={this.props.location.pathname}
+                        data={[
+                            {
+                                type: 'select', name: '活动类型', label: '活动类型', key: 'activityType', list: activityTypeList.map(key => ({
+                                    id: key,
+                                    name: taskNodeIds[key]
+                                })),
+                            },
+                            {
+                                type: 'select', name: '活动状态', label: '活动状态', key: 'activityStatus', list: activityStatusList.map(key => ({
+                                    id: key,
+                                    name: activityStatusIds[key]
+                                })),
+                            },
+                            {
+                                type: 'rangePicker',
+                                label: '任务生成时间',
+                                name: JSON.stringify(['开始时间', '结束时间']),
+                                key: JSON.stringify(['startTime', 'endTime']),
+                                keylistName: 'rangeTimelist',
+                            },
+                        ]} />
+                    <TableView columns={columns} data={data} pageSize='10' size='default' loading={loading} />
+                </div>
             </div>
         );
     }

--
Gitblit v1.8.0