广州矛调粤政易端
xusd
7 days ago d27794814b69d18aeb8ee96a46cae91d5613570c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/*
 * @Company: hugeInfo
 * @Author: ldh
 * @Date: 2022-09-20 10:31:56
 * @LastEditTime: 2022-12-29 17:48:39
 * @LastEditors: ldh
 * @Version: 1.0.0
 * @Description: 我的任务 - 详情 - 事件详情
 */
import React, { useMemo } from 'react';
import { Space } from 'dingtalk-design-mobile';
import { LocationOutlined } from 'dd-icons';
import Descriptions from '../../components/Descriptions';
import ImgShow from '../../components/ImgShow';
import { taskHandle_icon_1 } from '../../assets/icon';
import { task_img_2 } from '../../assets/img';
import { moment, timeFormat } from '../../utils/utility';
 
const TaskDetail = ({ data }) => {
    // 任务到期天数
    const getExpireDays = useMemo(() => {
        let now = moment(),
            target = moment(data.taskExpireTime),
            diffDay = now.diff(target, 'day');
        if (diffDay <= 0) {
            return `${Math.abs(diffDay) || 1}天后到期`;
        }
        return '';
    }, [data.taskExpireTime]);
 
    return (
        <div className="taskHandle-main">
            <div className="taskHandle-explain">
                <img src={taskHandle_icon_1} alt="" />
                <div className="taskHandle-explain-content">
                    <div>
                        联系人信息:<span className="taskHandle-explain-color">{data.contacts || '-'}</span>(电话:
                        <span className="taskHandle-explain-color">{data.contactsMobile || '-'}</span>)
                    </div>
                    <div>请在处置时限内完成事件的处置与核实</div>
                </div>
            </div>
            <div className="taskHandle-msg">
                <div className="taskHandle-msg-title">
                    <img className="taskHandle-msg-title-img" src={task_img_2} alt="" />
                    <div className="taskHandle-msg-title-content">
                        <Space wrap>
                            <div className="taskHandle-msg-title-content-title">{data.eventContent || '-'}</div>
                            {getExpireDays ? <div className="public-tag2">{getExpireDays}</div> : <div className="public-tag2 public-tag2-red">已过期</div>}
                        </Space>
                        <div className="taskHandle-msg-title-content-subtitle">
                            <span>{data.eventSourceDesc || '-'}</span>
                            <span className="public-rightBorder">下达时间:{timeFormat(data.taskCreateTime)}</span>
                        </div>
                    </div>
                </div>
                <Descriptions
                    data={[
                        { label: '事件类型', value: data.eventTypeDesc },
                        { label: '事件标题', value: data.eventTitle },
                        { label: '事件编号', value: data.eventNo },
                        { label: '发生时间', value: timeFormat(data.eventTime) },
                        {
                            label: '区域及所属辖区',
                            value: (
                                <span>
                                    {data.districtName || '-'}/{data.subdistrictName || '-'}/{data.communityName || '-'}
                                </span>
                            ),
                        },
                        {
                            label: '事件位置',
                            value: (
                                <div style={{ display: 'flex' }}>
                                    <div>
                                        <LocationOutlined />
                                    </div>
                                    <div style={{ flex: 1, marginLeft: '4px' }}>{data.addr || '-'}</div>
                                </div>
                            ),
                        },
                        { label: '事件级别', value: `${data.eventLevel || '-'}级` },
                        {
                            label: '事件描述',
                            value: data.eventContent,
                        },
                        {
                            label: '事件附件',
                            type: 'files',
                            value: (
                                <div className="taskHandle-msg-files">
                                    {!data.fileList?.length && '-'}
                                    {data.fileList?.map((x, t) => (
                                        <div className="taskHandle-msg-files-item" key={t}>
                                            <ImgShow img={x.showUrl} allImg={data.fileList} noTitle />
                                        </div>
                                    ))}
                                </div>
                            ),
                        },
                    ]}
                    layout="vertical"
                    columns={1}
                    colon={false}
                    textGap={0}
                    itemGap={8}
                />
            </div>
        </div>
    );
};
 
export default TaskDetail;