forked from gzzfw/frontEnd/gzDyh

xusd
2024-09-18 3ae864f005e8a874de01c15e14b83196a3f6f11b
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
const $$ = require('../../utils/util');
 
Component({
    /**
     * 组件的属性列表
     */
    properties: {
        pageType: String, // '1':我的调解; '2':我的司法确认, '3':登记页面
        caseData: {
            // 案件数据
            type: Object,
            value: {},
        },
        materialNum: String, // 相关材料数量,只有申请调解时查看才会传递
        type: {
            // '1':待受理;'2':待调解(待开始);'3':调解中(进行中);'4':调解结束(已结束);'5':调解-退回;'6':不予受理;'7':异常终止
            type: String,
            value: '1',
        },
    },
 
    /**
     * 组件的初始数据
     */
    data: {
        imgUrl: $$.url.img,
        titleShow: {
            '09_01001-1': ['自然人', '姓名', '真实姓名'],
            '09_01001-2': ['法人', '企业名称', '企业全名', '法定代表人姓名'],
            '09_01001-3': ['机构代表人', '机构名称', '机构全名', '机构代表人姓名'],
        },
        partyList: [], // 申请人 or 被申请人 or 代理人信息
        sealVisible: '', // 退回 or 不予受理 or 异常终止显示
        mediateVisible: false, // 调解信息是否显示
        mediate_fileInfoList: [],
        mediate_data: [],
        judicialVisible: false, // 司法确认信息是否显示
        judicial_fileInfoList: [],
        judicial_data: [],
        caseClaimHtml: '',
        caseDesHtml: '',
    },
 
    observers: {
        'caseData.id,caseData.process': function () {
            if (this.data.pageType === '1') {
                this._mediateData(this.data.caseData);
            }
            if (this.data.pageType === '2') {
                this._judicialData(this.data.caseData.judicInfo, this.data.caseData);
                this._mediateData(this.data.caseData.caseInfo);
            }
            if (this.data.pageType === '3') {
                this.data.caseData.fileSize = this.data.materialNum;
                this._mediateData(this.data.caseData);
            }
        },
    },
 
    /**
     * 组件的方法列表
     */
    methods: {
        // 整理司法确认数据
        _judicialData(data, caseData) {
            let fileInfoList = [];
            data.fileInfoList?.forEach((x) => {
                fileInfoList = fileInfoList.concat(x.fileList || []);
            });
            // 判断展示
            let judicialVisible = false;
            let sealVisible = '';
            let obj = {};
            // 判断司法确认信息展示
            if (['1', '6', '7'].indexOf(this.data.type) === -1) {
                judicialVisible = true;
            }
            if (this.data.type === '6' || this.data.type === '7') {
                sealVisible = caseData.processName;
            }
            obj = { judicialVisible: judicialVisible, sealVisible: sealVisible };
            this.setData({
                judicial_data: data,
                mediateVisible: true,
                judicial_fileInfoList: fileInfoList,
                ...obj,
            });
        },
        // 整理调解数据
        _mediateData(data) {
            // 合并当事人
            let partyList = [];
            let plaintiffList = [];
            data.plaintiffList?.forEach((x, t) => {
                plaintiffList.push({ ...x, type: 'plaintiffList', orderNum: data.plaintiffList.length !== 1 && t + 1 });
            });
            let defendantList = [];
            data.defendantList?.forEach((x, t) => {
                defendantList.push({ ...x, type: 'defendantList', orderNum: data.defendantList.length !== 1 && t + 1 });
            });
            partyList = [...plaintiffList, ...defendantList];
            let fileInfoList = [];
            data.fileInfoList?.forEach((x) => {
                fileInfoList = fileInfoList.concat(x.fileList || []);
            });
            // 判断展示
            let mediateVisible = false;
            let sealVisible = '';
            let obj = {};
            // 判断调解信息展示
            if (this.data.pageType === '1') {
                if (['1', '5', '6', '7'].indexOf(this.data.type) === -1) {
                    mediateVisible = true;
                }
                if (this.data.type === '5') {
                    sealVisible = data.caseStatusName;
                }
                if (this.data.type === '6' || this.data.type === '7') {
                    sealVisible = data.processName;
                }
                obj = { mediateVisible: mediateVisible, sealVisible: sealVisible };
            }
            this.setData({
                mediate_data: data,
                partyList: partyList,
                mediate_fileInfoList: fileInfoList,
                caseClaimHtml: `<pre class="pre">${data.caseClaim || '-'}</pre>`,
                caseDesHtml: `<pre class="pre">${data.caseDes || '-'}</pre>`,
                ...obj,
            });
        },
        // 打开文件
        _handleOpenFiles(e) {
            let item = e.currentTarget.dataset.item;
            let url = $$.baseUrl + $$.url.fileShowUrl + item.id;
            $$.openFiles(item.cat, url, [url]);
        },
        // 复制
        _handleCopy(e) {
            let text = e.currentTarget.dataset.text;
            if (!text) {
                $$.showToast({ title: '暂无房间号' });
                return;
            }
            wx.setClipboardData({
                data: text,
                success: function (res) {
                    wx.getClipboardData({
                        success: function (res) {
                            $$.showToast({ icon: 'success', title: '复制成功' });
                        },
                    });
                },
            });
        },
        // 跳转至材料上传页面
        handleGoToMaterial(e) {
            wx.navigateTo({
                url: '../../pages/materialShow/index?caseId=' + e.currentTarget.dataset.id,
            });
        },
    },
});